【发布时间】:2009-11-23 21:03:22
【问题描述】:
我想检查一组特定的值。
例如
- 检查列名应该在 1 到 5 之间
- 检查列名应为 1 或 2 或 4
【问题讨论】:
-
两种情况都需要答案。
标签: sql sql-server database sql-server-2005
我想检查一组特定的值。
例如
【问题讨论】:
标签: sql sql-server database sql-server-2005
在 SQL Server 文档中有相当丰富的信息,但是创建您要求的检查约束的两个语句是:
ALTER TABLE tablename ADD CONSTRAINT constraintName CHECK (colname between 1 and 5);
ALTER TABLE tablename ADD CONSTRAINT constraintName CHECK (colname in (1,2,4));
检查约束的条件可以包括:
in 引入的常量表达式列表
用 between 引入的一系列常量表达式
用like引入的一组条件,可能包含通配符
这允许你有这样的条件:
(colname >= 1 AND colname <= 5)
【讨论】:
ALTER TABLE tablename ADD CONSTRAINT constraintName CHECK (colname in (1,2,4));
【讨论】: