是oracle吗?oracle中:
alter trigger <trigname> disable;
恢复时:
alter trigger <trigname> enable;

解决方案 »

  1.   

    oldwain(老斗)说得对。象导数据时经常要这样做。
      

  2.   

    如果是sql server该怎么做?
      

  3.   

    在SQl If语句中加条件不就可以了
      

  4.   

    to 求知:
    在程序中得到的条件不能传到触发器里,怎么用if?
      

  5.   

    create trigger ....
    begin
       return     ---- add 
    ....
    ....end
      

  6.   

    to 莫西:
        怎么知道什么时候要加return?
      

  7.   

    To leeyoong(莫西):好象帖主的意思并不是要完全屏蔽Trigger,而是要Trigger能在适当条件下运行,而Trigger是不能象Stored Procedure一样传参数进来的。晕,非要用Trigger吗?不能用Stored Procedure吗?
    Trigger只是一类特殊的Stored Procedure,在insert、update、delete时自动触发,但不能传入传出参数。问题好象很高难啊!
      

  8.   

    to trybird(菜鸟):
        你说中我的意思了。
        因为我要在程序中做几个表的数据搬迁,但此时不需要触动触发器。难道真的没有办法了吗,有没有象oldwain(老斗)在oracle中的
    alter trigger <trigname> disable;
      

  9.   

    disEnable Trigger xxx
    ..
    ..
    表搬迁语句.
    ..
    ..
    Enable trigger xxx
      

  10.   

    disabel trigger xxName
    ..
    数据搬迁
    ..
    enable trigger xxname
      

  11.   

    to 蚂蚱先生:
        
        sql server 的 t_sql 语法好象没有这样的写法吧.
      

  12.   

    试一试这个,如果好的话,请通知一下
    alter table table_name disable trigger trigger_name ,alter table table_name enable trigger trigger_name to switch back on. leave out the trigger name and applies to all triggers for trigger_name. (in 12.0.) 
      

  13.   

    当然有,例:
    create trigger triname
    on tabname
    for update
    as
    select....
    如果屏蔽该触发器:alter table tabname disable trigger triname
    如果激活该触发器:alter table tabname enable trigger trinameSqlServer 70运行通过
      

  14.   

    在oracle中,disable掉就可以了!