规则

规则是一个向后兼容的功能,用于执行一些与 CHECK 约束相同的功能。使用 CHECK 约束是限制列值的首选标准方法。CHECK 约束还比规则更简明。一个列只能应用一个规则,但可以应用多个 CHECK 约束。CHECK 约束被指定为 CREATE TABLE 语句的一部分,而规则是作为单独的对象创建,然后绑定到列上。

重要说明重要提示

后续版本的 Microsoft SQL Server 将删除该功能。 请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。将使用 CHECK 约束。有关详细信息,请参阅 约束

以下示例创建了一个规则,只指定了指定范围内的数字。该规则被绑定到一个表列上。

CREATE RULE id_chk AS @id BETWEEN 0 and 10000;
GO
CREATE TABLE cust_sample
   (
   cust_id            int
   PRIMARY KEY,
   cust_name         char(50),
   cust_address         char(50),
   cust_credit_limit   money,
   );
GO
sp_bindrule id_chk, 'cust_sample.cust_id';
GO