Quando si utilizza Oracle è possibile creare un trigger disabilitato che specifica la parola DISABLE prima del corpo del trigger. Come posso ottenere lo stesso effetto in Sql Server?Come posso creare un trigger disabilitato in SQL Server 2005?
risposta
Se davvero necessario creare il grilletto disattivato quindi creare e disattivarla all'interno di una transazione:
begin tran
go
create trigger t_i on t after insert as begin /* trigger body */ end
go
disable trigger t_i on t
commit
go
I GO sono perché ci CREATE TRIGGER deve essere la prima istruzione in un batch, ma a seconda di come distribuisci il tuo codice probabilmente puoi renderlo un po 'più ordinato.
In Management Studio Espandere la cartella Trigger sotto la tabella e fare clic con il pulsante destro del mouse su Trigger e Disattiva.
DISABLE TRIGGER { [ schema_name . ] trigger_name [ ,...n ] | ALL }
ON { object_name | DATABASE | ALL SERVER } [ ; ]
MSDN:DISABLE TRIGGER (Transact-SQL)
ENABLE TRIGGER { [ schema_name . ] trigger_name [ ,...n ] | ALL }
ON { object_name | DATABASE | ALL SERVER } [ ; ]
MSDN:ENABLE TRIGGER (Transact-SQL)
sql-server-disable-all-triggers-on-a-database-disable-all-triggers-on-all-servers
No, voglio un trigger disabilitato al momento della creazione. – regisbsb
T-SQL fornisce una dichiarazione TRIGGER DISABLE che compie la stessa cosa. È possibile trovare i dettagli qui: DISABLE TRIGGER SYNTAX
No, voglio un trigger disabilitato al momento della creazione. – regisbsb
Il modo in cui ho fatto è stato a exec sia il creare e il disable come:
EXEC('CREATE TRIGGER trigger_on_myTable ON myTable <Trigger body> ');
EXEC('DISABLE TRIGGER trigger_on_myTable ON myTable');
Questo mi ha permesso di creare e disattivare nello stesso script, senza alcuna della GO.
- 1. SQL Server: verificare se un trigger è abilitato o disabilitato?
- 2. Come creare un tipo di tabella in SQL Server 2005
- 3. Come creare un vincolo univoco composito in SQL Server 2005
- 4. Come creare un trigger prima di eliminare in SQL Server?
- 5. SQL Server 2005 - rimozione dei trigger di tabella?
- 6. Creare un nuovo utente db in SQL Server 2005
- 7. Crea trigger in SQL Server
- 8. Come posso usare if dopo un CTE (SQL Server 2005)
- 9. Isoweek in SQL Server 2005
- 10. SQL Server 2005 replica
- 11. Come definire ENUM in SQL Server 2005?
- 12. Come utilizzare BIT in SQL Server 2005
- 13. Come creare un trigger MySQL in phpmyadmin
- 14. Disabilita Abilita server Trigger SQL
- 15. Come identifico un identificatore univoco vuoto in SQL Server 2005?
- 16. Database SQL Server 2005 'In Recovery'
- 17. SQL Server ON DELETE Trigger
- 18. SQL Server 2005: come sottrarre sei mesi
- 19. Come posso controllare se un indice non cluster esiste in SQL Server 2005
- 20. Concatenate ntext in SQL Server 2005
- 21. SQL Server 2005 ROW_NUMBER() senza ORDER BY
- 22. sottoquery in UPDATE SET (sql server 2005)
- 23. SQL Server dopo l'aggiornamento trigger
- 24. SQL Server Trigger - Invia messaggio alla coda
- 25. Downgrade di SQL Server 2008 a SQL Server 2005
- 26. Come trovare un indice disabilitato su SQL Server 2008
- 27. Come concatenare due stringhe in SQL Server 2005
- 28. Come sbloccare l'account utente in SQL Server 2005 Management Studio?
- 29. SQL Server 2005 IsNumeric non cattura '0310D45'
- 30. Come ripristinare il database da MDF in SQL Server 2005?
+1 per rispondere effettivamente alla domanda ... – gbn