禁用启用触发器SQL服务器

我想创build一个像下面这样的过程,但它的语法错误。 有谁能指出这个问题吗?

Create PROCEDURE [dbo].[my_proc] AS BEGIN DISABLE TRIGGER dbo.tr_name ON dbo.table_name -- some update statement ENABLE TRIGGER dbo.tr_name ON dbo.table_name END ** Error Message : Incorrect syntax near 'ENABLE'. 

改用下面的命令:

 ALTER TABLE table_name DISABLE TRIGGER tr_name ALTER TABLE table_name ENABLE TRIGGER tr_name 

之前的行需要以a结尾; 因为在SQL DISABLE 中不是关键字 。 例如:

 BEGIN ; DISABLE TRIGGER ... 

正如马克所说,以前的说法应该以分号结尾。 所以你可以使用:

 ; DISABLE TRIGGER dbo.tr_name ON dbo.table_name 

以下是最简单的方法

试试代码

ALTER TRIGGER trigger_name DISABLE

而已 :)

在一个新行中的ENABLE TRIGGER或DISABLE TRIGGER之后写入GO,例如:

 DISABLE TRIGGER dbo.tr_name ON dbo.table_name GO -- some update statement ENABLE TRIGGER dbo.tr_name ON dbo.table_name GO