DROP RULE (Transact-SQL)
Gilt für: SQL Server Azure SQL Managed Instance
Entfernt eine oder mehrere benutzerdefinierte Regeln aus der aktuellen Datenbank.
Wichtig
DROP RULE
wird in einer zukünftigen Version von SQL Server entfernt. Verwenden Sie keine DROP RULE
neuen Entwicklungsaufgaben, und planen Sie, Anwendungen zu ändern, die sie derzeit verwenden. Verwenden Sie CHECK
stattdessen Einschränkungen, die Sie mithilfe des CHECK
Schlüsselworts CREATE TABLE oder ALTER TABLE erstellen können. Weitere Informationen finden Sie unter Unique Constraints and Check Constraints.
Transact-SQL-Syntaxkonventionen
Syntax
DROP RULE [ IF EXISTS ] { [ schema_name . ] rule_name } [ , ...n ]
[ ; ]
Argumente
IF EXISTS
Gilt für: SQL Server 2016 (13.x) und höhere Versionen
Löscht die Regel nur, wenn diese bereits vorhanden ist.
schema_name
Der Name des Schemas, zu dem die Regel gehört.
rule
Die regel, die entfernt werden soll. Regelnamen müssen den Regeln für Bezeichner entsprechen. Das Angeben des Regelschemanamens ist optional.
Bemerkungen
Um eine Regel zu löschen, müssen Sie zuerst eine möglicherweise vorhandene Bindung an eine Spalte oder einen Aliasdatentyp aufheben. Um die Verbindung der Regel aufzuheben, verwenden Sie sp_unbindrule
. Wenn die Regel gebunden ist, wenn Sie versuchen, sie abzulegen, wird eine Fehlermeldung angezeigt, und die DROP RULE
Anweisung wird abgebrochen.
Nach dem Löschen einer Regel werden auf neue Daten, die Sie in die betreffenden Spalten eingeben, die früheren Einschränkungen der gelöschten Regel nicht mehr angewendet. Vorhandene Daten sind in keiner Weise betroffen.
Die DROP RULE
Anweisung gilt nicht für CHECK
Einschränkungen. Weitere Informationen zum Ablegen CHECK
von Einschränkungen finden Sie unter ALTER TABLE.
Berechtigungen
Um mindestens auszuführen DROP RULE
, muss ein Benutzer über die Berechtigung für das Schema verfügen ALTER
, zu dem die Regel gehört.
Beispiele
Im folgenden Beispiel wird die Bindung der VendorID_rule
-Regel aufgehoben und diese Regel dann gelöscht.
EXEC sp_unbindrule 'Production.ProductVendor.VendorID';
DROP RULE VendorID_rule;