【发布时间】:2015-06-02 01:55:30
【问题描述】:
ID VALUE
0 2
1 3
2 0
当第一个 id 为 0 的记录被删除时,第二个应该变成 0,第三个应该是 1。
导致:
ID VALUE
0 3
1 0
当 id 为 1 的记录被删除时,第三个应该变成 1 。
ID VALUE
0 2
1 0
哪一个被删除,连续的顺序应该从0开始保持。
这个 id 不是主键。应该在触发器中删除。
【问题讨论】:
-
如果没有一些笨拙的解决方法,您不能让触发器修改触发器正在执行的同一表中的其他记录(变异触发器)。最好写一个存储过程来封装逻辑。
-
“应该在触发器中删除” 这是一个荒谬的要求,比如说……老师?请注意,家庭作业在 SO 中是明确允许的。没有什么不妥。但知道这可能有助于我们为您指明正确的方向,而不会浪费任何人的时间。
-
您是否只是为了显示目的而使 then 连续?