Transact-SQL 参考

DROP RULE

从当前数据库中删除一个或多个用户定义的规则。

语法

DROP RULE { rule } [ ,...n ]

参数

rule

是要删除的规则。规则名称必须符合标识符规则。有关标识符规则的更多信息,请参见使用标识符。可以选择是否指定规则所有者的名称。

n

是表示可以指定多个规则的占位符。

注释

如果规则当前绑定到列或用户定义的数据类型,若要除去规则,首先需解除绑定。使用 sp_unbindrule 解除绑定规则。如果在试图除去规则时规则是绑定的,将显示错误信息并取消 DROP RULE 语句。

除去规则后,可以在以前受规则约束的列中输入新数据而不受规则的约束。现有数据不受任何影响。

DROP RULE 语句不适用于 CHECK 约束。有关除去 CHECK 约束的更多信息,请参见本卷中的"ALTER TABLE"。

权限

默认情况下,将 DROP RULE 权限授予规则所有者,该权限不可转让。然而,db_ownerdb_ddladmin 固定数据库角色成员和 sysadmin 固定服务器角色成员可以通过在 DROP RULE 内指定所有者除去任何对象。

示例

下例解除绑定名为 pub_id_rule 的规则并将其除去。

USE pubs
IF EXISTS (SELECT name FROM sysobjects
         WHERE name = 'pub_id_rule'
            AND type = 'R')
   BEGIN
      EXEC sp_unbindrule 'publishers.pub_id'
      DROP RULE pub_id_rule
   END
GO

请参见

CREATE RULE

sp_bindrule

sp_help

sp_helptext

sp_unbindrule

USE