Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So löschen oder löschen Sie alle Trigger aus einer Datenbank in SQL Server

Manchmal müssen wir alle Trigger aus einer SQL Server-Datenbank löschen/löschen. Der folgende Code kann verwendet werden, um alle Trigger auf alle Tabellen zu löschen, die Sie in einer SQL Server-Datenbank erstellt haben. Bevor Sie fortfahren und dieses Skript ausführen, vergewissern Sie sich bitte, dass Sie die richtige Datenbank und den richtigen Server ausgewählt haben, da dadurch alle Trigger aus der ausgewählten SQL Server-Datenbank gelöscht werden.



USE [ Datenbank]
GO
DECLARE @TriggerName AS VARCHAR(500)
-- Löschen oder Löschen aller Trigger in einer Datenbank in SQL Server
DECLARE DropTrigger CURSOR FOR
SELECT TRG .name AS TriggerName
FROM sys.triggers TRG
INNER JOIN sys.tables TBL
ON 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
+ ' Dropped Successfully'
EXEC (@SQL)
PRINT @SQL
FETCH Next FROM DropTrigger INTO @TriggerName
END
DropTrigger SCHLIESSEN
DropTrigger DEALLOCATE