DROP RULE (Transact-SQL)
Rimuove una o più regole definite dall'utente dal database corrente.
Importante |
---|
L'istruzione DROP RULE verrà rimossa nella prossima versione di Microsoft SQL Server. Non utilizzare l'istruzione DROP RULE e pianificare la modifica delle applicazioni che ne fanno uso. Utilizzare invece i vincoli CHECK, che è possibile creare tramite la parola chiave CHECK nelle istruzioni CREATE TABLE o ALTER TABLE. Per ulteriori informazioni, vedere Vincoli UNIQUE e CHECK. |
Convenzioni della sintassi Transact-SQL
Sintassi
DROP RULE { [ schema_name . ] rule_name } [ ,...n ] [ ; ]
Argomenti
schema_name
Nome dello schema a cui appartiene la regola.rule
Regola che si desidera rimuovere. I nomi di regola devono essere conformi alle regole per gli identificatori. Il nome dello schema della regola è facoltativo.
Osservazioni
Per eliminare una regola associata a una colonna o a un tipo di dati alias, è innanzitutto necessario disassociarla. Per disassociare la regola, utilizzare la stored procedure sp_unbindrule. Se si tenta di eliminare una regola prima di disassociarla, viene visualizzato un messaggio di errore e l'istruzione DROP RULE viene annullata.
Dopo l'eliminazione di una regola, i nuovi dati immessi in colonne precedentemente governate dalla regola vengono inseriti senza i vincoli della regola. I dati esistenti non vengono alterati in alcun modo.
L'istruzione DROP RULE non ha alcun effetto sui vincoli CHECK. Per ulteriori informazioni sull'eliminazione dei vincoli CHECK, vedere ALTER TABLE (Transact-SQL).
Autorizzazioni
Per eseguire l'istruzione DROP RULE, è necessario disporre almeno dell'autorizzazione ALTER per lo schema a cui appartiene la regola.
Esempi
Nell'esempio seguente viene disassociata e quindi eliminata la regola VendorID_rule.
USE AdventureWorks;
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