DROP RULE (Transact-SQL)
從目前資料庫移除一或多個使用者自訂的規則。
重要事項 |
---|
在下一個 Microsoft SQL Server 版本中,將移除 DROP RULE。請勿在新的開發工作中使用 DROP RULE,並規劃修改目前使用 DROP RULE 的應用程式。請改用 CHECK 條件約束,您可以利用 CREATE TABLE 或 ALTER TABLE 的 CHECK 關鍵字來加以建立。如需詳細資訊,請參閱<唯一條件約束與檢查條件約束>。 |
適用於:SQL Server (SQL Server 2008 至目前版本)。 |
語法
DROP RULE { [ schema_name . ] rule_name } [ ,...n ] [ ; ]
引數
schema_name
這是規則所屬的結構描述名稱。rule
這是要移除的規則。 規則名稱必須符合識別碼的規則。 您可以選擇性地指定規則結構描述名稱。
備註
若要卸除規則,且規則目前繫結了資料行或別名資料類型,請先將它解除繫結。 若要解除繫結規則,請使用 sp_unbindrule。 如果您試圖卸除規則時,規則仍是繫結的,便會出現一則錯誤訊息,且會取消 DROP RULE 陳述式。
在卸除規則之後,會輸入規則先前管理的資料行中所輸入的新資料,但不會有規則的條件約束。 現有資料完全不會受到影響。
DROP RULE 陳述式不適用於 CHECK 條件約束。 如需有關卸除 CHECK 條件約束的詳細資訊,請參閱<ALTER TABLE (Transact-SQL)>。
權限
若要執行 DROP RULE,使用者至少必須有規則所屬結構描述的 ALTER 權限。
範例
下列範例會解除繫結再卸除名稱為 VendorID_rule 的規則。
USE AdventureWorks2012;
GO
IF EXISTS (SELECT name FROM sysobjects
WHERE name = 'VendorID_rule'
AND type = 'R')
BEGIN
EXEC sp_unbindrule 'Production.ProductVendor.VendorID'
DROP RULE VendorID_rule
END;
GO