状态缩写检查约束

时间:2017-12-01 21:29:04

标签: mysql sql

我想为州缩写创建一个检查约束。我只想为State列允许两个字符的插入。代码是什么? 我的代码是: State VARCHAR(2)NOT NULL CONSTRAINT CK_StateAbbr CHECK(状态如'xx')

我假设把xx放在那里只允许xx用于状态。 我会把CHECK(状态像'[A-Z] [A-Z]')?

1 个答案:

答案 0 :(得分:1)

对于大多数MySQL版本,它没有任何区别。 <{1}}约束被接受为语法,但未实现。

这给你留下了几个选择。首先,忽略这个问题。这将是最常见的方法。其次,使用触发器。这会造成代码混乱,并不是最佳的。

第三种方法是创建一个包含所有有效状态缩写的表。然后,您可以使用外键约束,以确保该值有效。