Как создать отключенный триггер в SQL Server 2005?

При использовании Oracle вы можете создать отключенный триггер, указав слово DISABLE перед телом триггера. Как я могу добиться того же эффекта в Sql Server?

7
задан regisbsb 30 August 2010 в 11:59
поделиться

2 ответа

Если вам действительно необходимо отключить триггер, создайте и отключите его в транзакции:

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

GO существуют, потому что CREATE TRIGGER должен быть первым оператором в пакете, но в зависимости от того, как вы развертываете свой код, вы, вероятно, можете сделать его более аккуратным.

15
ответ дан 6 December 2019 в 12:45
поделиться

В студии управления разверните папку Trigger под таблицей и щелкните правой кнопкой мыши Trigger and Disable.

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 -все серверы

0
ответ дан 6 December 2019 в 12:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: