【发布时间】:2016-05-05 16:11:25
【问题描述】:
共有三个表A、B、C和两个触发器a、b。
- 当表
A更新时,触发器a将被激活并更新表B - 当表
B更新时,触发器b将被激活并更新表C
当我更新表A时,表C会更新吗?
如果没有,怎么办?
【问题讨论】:
-
是的,C 应该更新了。
-
Nested Triggers。而且 StevieG 说的没错,你的 C 表应该更新了。
-
你尝试的时候发生了什么?
-
我会详细说明我的问题。当我在
A中插入一条记录时,A会被触发器更新。确实如此!然后B应该由触发器a更新。但事实并非如此。 -
是的,您的触发器将按您的预期触发。然而,根据我的经验,这是一个糟糕的设计,会给那些必须维护此代码的人带来很大的困难。我强烈建议您不要这样做;相反,创建一个过程来根据需要更新表 A、B 和 C 并调用此过程,而不是指望嵌套触发器按您期望的顺序触发。
标签: sql sql-server tsql triggers