查了一下好象一次只能删除一个Drop Trigger triggerName

解决方案 »

  1.   

    禁用某个表的所有触发器:
    alter table 表名 disable trigger all
      

  2.   

    以下是删除一个数据库中所有的触发器--触发器
    DECLARE @STRING VARCHAR(8000)
    WHILE EXISTS(SELECT NAME FROM SYSOBJECTS WHERE XTYPE='TR')
    BEGIN
    SELECT @STRING='DROP TRIGGER '+NAME+ CHAR(13) FROM SYSOBJECTS WHERE XTYPE='TR'
    EXEC(@STRING)
    ENDGO
      

  3.   

    噢,楼主的意思是删除一个表的所有触发器
    那么,稍微修改一下即可--触发器
    DECLARE @STRING VARCHAR(8000)
    WHILE EXISTS(SELECT NAME FROM SYSOBJECTS WHERE XTYPE='TR' and name=你的表)
    BEGIN
    SELECT @STRING='DROP TRIGGER '+NAME+ CHAR(13) FROM SYSOBJECTS WHERE XTYPE='TR' and name=你的表
    EXEC(@STRING)
    ENDGO
      

  4.   

    USE YOUR_DB
    SELECT NAME FROM SYSOBJECTS WHERE XTYPE='TR' AND NAME = 'TABLE_NAME'
    如果有数据
    DROP TRIGGER ...