目标表上的合并语句和后触发器

时间:2011-12-13 09:38:22

标签: sql sql-server-2008 sql-merge

我在目标表上有两个后触发器(一个用于插入,一个用于更新)。 现在,如果我在目标表上执行merge,则触发器只执行一次。虽然merge语句执行大约300次更新和200次插入。

我在每个触发器中使用print语句检查它,在从删除的,插入的记录到变量中的数据之后立即进行检查。

为什么?这是一个错误吗?

我有SQL Server 2008 sp1 std(SBS2k8的一部分)。

1 个答案:

答案 0 :(得分:6)

每个动作都会触发一个触发器。不是“每行”

您有一个200行的插入和300行的一次更新。

因此,如果插入和更新,则触发器运行一次,或者每个

运行一次单独的触发器

编辑: