好的,我相信这个问题并不清楚。在这里,我以其他方式重写了这个。
假设我创建了两个表,
table1(c1 int PRIMARY KEY)table2(table1c11 int)
和之间有关系table1,table2
即table1.c1=table2.table1c11
table1并且,我在and中执行以下语句table2
insert into table1(c1)
values('a'),('b'),('c'),('d'),('e')
insert into table2(table1c11)
values('a'),('a'),('b'),('d')
现在我想要实现的是,一旦我更新了相应数据中c1的值,就会自动更改。为此,我需要在和关系中创建约束并应用.table1table2table1table2CASCADE UPDATE
table1所以,后来我在ie中应用了一个新的 SQL 更新语句
Update table1 set c1=c1+'updated'
然后中的数据table2也会发生变化,但是如果我想通过 实现相同的功能INSTEAD OF UPDATE TRIGGER,那么我需要编写而不是更新触发器,并且在其中,我需要使用两个魔术表INSERTED和DELETED.
但要点是,在这种情况下,我只有一列存在table1并且我正在更新同一列,所以我如何映射插入和删除的行。如果我使用 CASCADing,SQL Server 也会做同样的事情。
那么问题来了,如果表中的主键数据发生变化,SQL Server 如何处理批量更新。

