SQL Server Check Constratints
检查(Check)约束,可以约束字段在插入数据或更新数据时,必须满足check约束定义好的业务规则。
CHECK约束不能被定义的Text、ntext或image数据类型的字段上。
RDBMS会使用Check约束业务规则验证插入或更新的值,当结果为TRUE或UNKNOWN时,接授对数据插入或更新,如查验证结果为FALSE,检查约束将拒绝对字段数据插入或是更新操作。
CREATE TABLE [dbo].[Users]
(
UsersId INT IDENTITY PRIMARY KEY NOT NULL,
Name NVARCHAR(50) NOT NULL,
Sex TINYINT CHECK([Sex] BETWEEN 1 AND 3) --([Sex]>=(1) AND [Sex]<=(3))
)
(
UsersId INT IDENTITY PRIMARY KEY NOT NULL,
Name NVARCHAR(50) NOT NULL,
Sex TINYINT CHECK([Sex] BETWEEN 1 AND 3) --([Sex]>=(1) AND [Sex]<=(3))
)
为一个表,修改或添加一个Check约束:
ALTER TABLE [dbo].[Users] ADD CONSTRAINT CK_Users_Sex
CHECK ([Sex]>=(1) AND [Sex]<=(3))
CHECK ([Sex]>=(1) AND [Sex]<=(3))
删除check约束:
ALTER TABLE [dbo].[Users]
DROP CONSTRAINT CK_Users_Sex
DROP CONSTRAINT CK_Users_Sex