我尝试对ID号执行SQL检查约束,该ID号是
Name: EmployeeID
Data Type: char
Size: 10我使用的是Microsoft SQL Server2008SQL,但由于某些原因,我无法理解如何将一些可以在查询中使用的R2命令用作检查约束。
我正在尝试使用LIKE来实现,例如
EmployeeID LIKE '[0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9]'但它不接受这一点,有没有更好的方法来处理这样的约束?
谢谢。
发布于 2012-11-21 02:06:49
方括号之间没有空格,它应该可以工作:
EmployeeID LIKE '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'发布于 2012-11-21 02:07:14
您的约束当前需要存在9个空格。尝试:
EmployeeID LIKE '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'或者:
LEN(EmployeeID) = 10 and EmployeeID not like '%[^0-9]%'这意味着没有字符在0-9组之外,它的长度是10个字符-如果将来长度需要更改,则更易于维护。
https://stackoverflow.com/questions/13479270
复制相似问题