sql - 如何在 sql server 2005 中使用检查约束

标签 sql sql-server database sql-server-2005

我想检查一组特定的值。
例如

  • 检查列名应该在 1 到 5 之间
  • 检查列名应该是 1 或 2 或 4

最佳答案

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));

检查约束的条件可以包括:

  1. 用in引入的常量表达式列表

  2. 一系列用between引入的常量表达式

  3. like引入的一组条件,可以包含通配符

这允许你有这样的条件:

(colname >= 1 AND colname <= 5)

关于sql - 如何在 sql server 2005 中使用检查约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1785942/

相关文章:

mysql - 在每组行中执行操作

sql - 使用间距阈值对可变连续的带时间戳的记录进行分组

python - 如何通过 Python 访问 Amazon DynamoDB?

sql-server - Sql Server 主键存在分区问题

java - 如何获取具有重复数据的数据库记录的最大行ID

mysql - 数据库可移植性(sql server 到 mysql、postgresql)

mysql - XML 与数据库

mysql - 在 GROUP BY 中选择 MAX,但在 MYSQL 中将结果限制为 1

mysql - DATE_FORMAT 两次在 Where 子句中不起作用

mysql - magento 的服务器解决方案