sp_unbindrule <objname>[, futureonly[, "accessrule" | "all"]]
<objname>
是要解除规则绑定的表和列或用户定义数据类型的名称。如果参数的形式不是“<table>.<column>”,则 <objname> 将被认为是用户定义的数据类型。解除规则与用户定义数据类型的绑定时,将同时解除它与属于该类型的列的绑定。已经绑定到其它规则的列不受影响。
futureonly
防止属于指定用户定义数据类型的列丢失其规则。解除规则与列的绑定时,将忽略此选项。
accessrule
表示要解除绑定到 <objname> 的访问规则的绑定。
all
指定要解除所有绑定到 <objname> 的规则的绑定。
解除规则与 employees 表的 startdate 列的绑定:
sp_unbindrule "employees.startdate"
解除规则与名为 def_ssn 的用户定义数据类型和所有属于该类型的列的绑定:
sp_unbindrule def_ssn
用户定义数据类型 ssn 将不再具有规则,但现有 ssn 列不受影响:
sp_unbindrule ssn, futureonly
使用 all 参数可以同时解除访问规则绑定和域规则的绑定。例如,若要解除 publishers 表上的所有访问规则和域规则的绑定,请执行以下命令:
sp_unbindrule publishers, null, "all"
若要解除访问规则与某个用户定义数据类型的绑定,并且希望更改只影响以后对该数据类型的使用,请发出以下命令:
sp_unbindrule def_ssn, futureonly, "accessrule"
若要同时解除访问规则和域规则与该数据类型的绑定,并且希望更改只影响以后对该数据类型的使用,请发出以下命令:
sp_unbindrule def_ssn, futureonly, "all"
下面的访问规则绑定到 publishers 表:
sp_bindrule empl_access, "publishers.pub_id"
若要解除该规则的绑定,请发出以下命令:
sp_unbindrule "empl_access", NULL, "accessrule"
使用 sp_unbindrule 时,还存在一些其它注意事项:
“<table>.<column>”格式指定 <objname> 作为参数。