在触发器中写修改语句:
update table set sn=sn - 1 where sn > :new.sn;

解决方案 »

  1.   

    在触发器中写修改语句:
    update table set sn=sn - 1 where sn > :old.sn;
      

  2.   

    在触发器中,用delete 时,不能够用new 与 old 的值!
      

  3.   

    在触发器中是不能对触发表进行操作的。如果你是在程序里执行delete操作,可以将delete掉的sn值记录,然后再在程序里调用update语句。
      

  4.   

    delete触发器可以用:old值,不明楼主为何要连续,而且像liqiangcong(松树)假设成功,那么序列下一个值也是不连续。