一、
对于SQL UPDATE触发器来说,当发生更新时,生成的inserted表中,数据是所更新的那条数据的整个记录!如下:
若表TABLE1
a bc
1 1 1
更新b为2时,inserted表中的数据是
a b c
1 2 1
即其他没更新的部分也一起保留在了inserted表中
------------------------------------------------------
二、
CREATE TABLE tb(id int,val int)
INSERT INTO tb SELECT 1,2
UNION ALL SELECT 2,3
UNION ALL SELECT 3,4
如果
update tb set
val = 10
where id < 3
那触发器内的inserted和deleted就是两条记录.id为1,2的记录.
但inserted的val 就是10,而deleted的val 就是2和3;
本文详细介绍了SQL UPDATE触发器的工作原理,特别是inserted表如何保留完整的更新记录,即使只有部分字段被修改。此外还通过示例解释了触发器如何处理多行更新的情况。
1009

被折叠的 条评论
为什么被折叠?



