在table.sn ,数据类型为number(2),存放一个递增的序列,删除其中一个后,大于他的数自动减一,我应该怎样做比较好? 在触发器中写修改语句:update table set sn=sn - 1 where sn > :new.sn; 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在触发器中写修改语句:update table set sn=sn - 1 where sn > :old.sn; 在触发器中,用delete 时,不能够用new 与 old 的值! 在触发器中是不能对触发表进行操作的。如果你是在程序里执行delete操作,可以将delete掉的sn值记录,然后再在程序里调用update语句。 delete触发器可以用:old值,不明楼主为何要连续,而且像liqiangcong(松树)假设成功,那么序列下一个值也是不连续。 触发器 求一条sql语句 Oracle to_date函数问题 如何过滤数据为同一个公司的最新一条货物? ORA 用自增实现自动编号 帮忙解答一道SQL面试题 海量数据查询问题 如何实现excel和oracle数据互相导入 oracle共享锁和排他锁 序列返回值问题?? General SQL error ORA-061631:表121.main 达到MAX #extents(dd) 请教高手:这个语句怎么写
update table set sn=sn - 1 where sn > :old.sn;