如何在SQL Server 2005中创建禁用的触发器?

reg*_*bsb 7 sql sql-server ddl triggers sql-server-2005

使用Oracle时,您可以创建一个禁用的触发器,在触发器主体之前指定单词DISABLE.如何在Sql Server中实现相同的效果?

Pon*_*ife 15

如果您确实必须创建禁用的触发器,则在事务中创建并禁用它:

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
Run Code Online (Sandbox Code Playgroud)

GO是存在的,因为CREATE TRIGGER必须是批处理中的第一个语句,但根据您部署代码的方式,您可能会使它看起来有点整洁.