Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come eliminare o eliminare tutti i trigger da un database in SQL Server

A volte è necessario eliminare/eliminare tutti i trigger da un database di SQL Server. Il codice seguente può essere utilizzato per eliminare tutti i trigger su tutte le tabelle create in un database di SQL Server. Prima di procedere ed eseguire questo script, assicurati di aver scelto il database e il server corretti poiché eliminerà tutti i trigger dal database SQL Server scelto.



USE [ Database]
VAI
DICHIARA @TriggerName AS VARCHAR(500)
-- Elimina o elimina tutti i trigger in un database in SQL Server
DICHIARA DropTrigger CURSOR FOR
SELEZIONA TRG .name AS TriggerName
DA sys.triggers TRG
INNER JOIN sys.tables TBL
SU TBL.OBJECT_ID =TRG.parent_id
OPEN DropTrigger
FETCH Next FROM DropTrigger INTO @TriggerName
WHILE @@FETCH_STATUS =0
BEGIN
DECLARE @SQL VARCHAR(MAX)=NULL
SET @SQL='Drop Trigger ' + @TriggerName
PRINT 'Trigger ::' + @TriggerName
+ ' Eliminato con successo'
EXEC (@SQL)
PRINT @SQL
FETCH Next FROM DropTrigger IN @TriggerName
END
CHIUDI DropTrigger
DEALLOCATE DropTrigger