我在目标表上有两个后触发器(一个用于插入,一个用于更新)。 现在,如果我在目标表上执行merge,则触发器只执行一次。虽然merge语句执行大约300次更新和200次插入。
我在每个触发器中使用print语句检查它,在从删除的,插入的记录到变量中的数据之后立即进行检查。
为什么?这是一个错误吗?
我有SQL Server 2008 sp1 std(SBS2k8的一部分)。
答案 0 :(得分:6)
每个动作都会触发一个触发器。不是“每行”
您有一个200行的插入和300行的一次更新。
因此,如果插入和更新,则触发器运行一次,或者每个
运行一次单独的触发器编辑: