• 在存储过程中设置某表的触发器是否启用


     
    ALTER  PROCEDURE [dbo].[DisableEnable_Trigger]
    @TableName varchar(50),
    @DisableEnableType VARCHAR(10)
    AS
    /*****************************************************************************************
     **      Input:
    **   @TableName: table to disable/enable trigger
    **   @DisableEnableType in ('Disable', 'Enable')

     **   Exec DisableEnable_Trigger 'OuttblStore', 'Disable'
    **   Exec DisableEnable_Trigger 'OuttblStore', 'Enable'
     **  
    ******************************************************************************************/
    BEGIN
    SET NOCOUNT ON
     --PRINT 'Executing DisableEnable_Trigger...' + @TableName
     DECLARE  @TriggerName  VARCHAR(100)
     DECLARE  @SqlStatement NVARCHAR(200)
     
     -- Get triggers list in cursor
     DECLARE  cursorTriggers CURSOR FOR
     SELECT name FROM sysobjects
      WHERE xtype = 'TR' and parent_obj =
       (SELECT id FROM sysobjects WHERE name = @TableName)

      OPEN cursorTriggers
       FETCH NEXT FROM cursorTriggers INTO @TriggerName
       WHILE @@FETCH_STATUS = 0
       BEGIN
       IF upper(@DisableEnableType) = 'DISABLE'
        SET @SqlStatement = 'ALTER TABLE '+@TableName+' DISABLE TRIGGER ' +@TriggerName
       ELSE
        SET @SqlStatement = 'ALTER TABLE '+@TableName+' ENABLE TRIGGER ' +@TriggerName
     
       --PRINT @SqlStatement
       EXEC sp_executesql @SqlStatement
        
          FETCH NEXT FROM cursorTriggers INTO @TriggerName
       END
       CLOSE cursorTriggers
       DEALLOCATE cursorTriggers

     --PRINT 'Executed DisableEnable_Trigger...' + @TableName+ '.'+@DisableEnableType
    SET NOCOUNT OFF
    END


     

  • 相关阅读:
    MySQL 优化实施方案
    MySQL Replication 主从复制全方位解决方案
    CentOS 7.X 系统安装及优化
    W25Q32的使用
    Word分栏
    转载:STM32之中断与事件---中断与事件的区别
    常见贴片电阻的分类、功率、封装、标注规则
    导线时延
    重装系统流程
    MFC应用程序向导生成的文件
  • 原文地址:https://www.cnblogs.com/huanghai223/p/2144757.html
Copyright © 2020-2023  润新知