在SQL中 创建检查约束

2024-12-28 02:39:21
推荐回答(3个)
回答1:

1、首先右键单击数据表,选择设计,如下图所示。

2、接着右键单击字段,选择检查约束,如下图所示。

3、接下来点击左下角的添加按钮,如下图所示。

4、然后点击表达式右侧的三个点,如下图所示。

5、接下来在弹出的界面中编写表达式的内容,如下图所示。

6、另外如果不用的话可以直接选中约束点击删除按钮,如下图所示。

7、最后还可以在右侧设置约束的应用范围,如下图所示。

8、完成效果图。

回答2:

看提示, 数据库像是 SQL Server

你可以把 约束写简单一点

例如:
add constraint CK_PersonID check (
(
-- 长度 15, 只包含数字
LEN( PersonID ) = 15 AND PATINDEX( '%[^0-9]%', PersonID ) = 0
)
OR
(
-- 长度 18, 只包含数字
LEN( PersonID ) = 18 AND PATINDEX( '%[^0-9]%', PersonID ) = 0
)
OR
(
-- 长度 18, 只包含数字 和 X, 且 X 在最后
LEN( PersonID ) = 18
AND PATINDEX( '%[^0-9X]%', PersonID ) = 0
AND PATINDEX( '%[^0-9]%', LEFT( PersonID, 17) ) = 0
)
);

回答3:

\d{15} 或者 \d{17}X 就可以吧