0

我正在使用 Sql Server 和触发器。

过去我使用 Oracle 和触发器。在 Oracle 中有一个 FOR EACH ROW 触发器的功能。

Sql Server 2000 和 2005 不支持这个,但是这个支持哪个版本。

问候

4

2 回答 2

2

SQL Server 中没有等价物。您只有 INSERTED 和 DELETED 表可以使用,您必须显式匹配它们才能获得逐行关联。在某些情况下,表没有不可变的 GUID 或标识列(代理键),可能无法匹配它们。

如果需要使用触发器,或者确保涉及标识符键更改的更新一次只能发生一行,则取决于模式的设计。

于 2012-11-14T08:25:43.297 回答
1

不,SQL Server 没有FOR EACH ROW触发器。您需要检查inserteddeleted虚拟表 - 对它们执行基于集合的操作,或者使用游标对它们进行迭代。

于 2012-11-14T08:26:28.187 回答