我想写一个约束来检查电话号码的第4个位置是否是空格。例如,
+34 12334 ......应该被允许
+341234 ...不应该被允许。
我的电话号码是VARCHAR(50)类型。
答案 0 :(得分:0)
你可以用charindex做一些事情,它会搜索字符串中的特定字符串并返回其位置
select telephone
FROM table
WHERE CHARINDEX(' ', Telephone) = 4
对于列出的第一个数字,结果将是4,第二个将返回0(未找到)
答案 1 :(得分:0)
尝试这样的事情:
ALTER TABLE yourlib.yourtablename ADD CONSTRAINT
yourlib.yourconstraintname CHECK (telephone is null or length(telephone)>4 and substring(telephone, 4, 1)=' ');