DROP RULE (Transact-SQL)
Entfernt eine oder mehrere benutzerdefinierte Regeln aus der aktuellen Datenbank.
Wichtig |
---|
DROP RULE wird in der nächsten Version von Microsoft SQL Server nicht mehr unterstützt. Verwenden Sie DROP RULE nicht bei neuen Entwicklungsarbeiten, und planen Sie die Änderung von Anwendungen, die DROP RULE derzeit verwenden. Verwenden Sie stattdessen CHECK-Einschränkungen, die Sie mithilfe des CHECK-Schlüsselworts von CREATE TABLE oder ALTER TABLE erstellen können. Weitere Informationen finden Sie unter CHECK-Einschränkungen. |
Syntax
DROP RULE { [ schema_name . ] rule_name } [ ,...n ] [ ; ]
Argumente
schema_name
Der Name des Schemas, zu dem die Regel gehört.rule
Die zu entfernende Regel. Regelnamen müssen den Regeln für Bezeichner entsprechen. Weitere Informationen zu Regeln für Bezeichner finden Sie unter Verwenden von Bezeichnern als Objektnamen. Das Angeben des Regelschemanamens ist optional.
Hinweise
Um eine Regel zu löschen, müssen Sie zuerst eine möglicherweise vorhandene Bindung an eine Spalte oder einen Aliasdatentyp aufheben. Verwenden Sie sp_unbindrule, um die Bindung der Regel aufzuheben. Wenn beim Löschen einer Regel noch eine Bindung besteht, 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. Dies wirkt sich nicht auf bereits vorhandene Daten aus.
Die DROP RULE-Anweisung gilt nicht für CHECK-Einschränkungen. Weitere Informationen zum Löschen von CHECK-Einschränkungen finden Sie unter ALTER TABLE (Transact-SQL).
Berechtigungen
Zum Ausführen von DROP RULE benötigt der Benutzer mindestens die ALTER-Berechtigung für das Schema, zu dem die Regel gehört.
Beispiele
Im folgenden Beispiel wird die Bindung der VendorID_rule-Regel aufgehoben und diese Regel dann gelöscht.
USE AdventureWorks2008R2;
GO
IF OBJECT_ID (N'VendorID_rule', N'R') IS NOT NULL
BEGIN
EXEC sp_unbindrule 'Production.ProductVendor.BusinessEntityID';
DROP RULE VendorID_rule;
END;
GO