确定ON UPDATE CASCADE是否触发了Update触发器

时间:2017-10-19 04:06:28

标签: sql-server triggers

我的数据库中有逻辑,它会在设置“已完成”状态后阻止对表的更改。目前通过AFTER UPDATE触发器实现。

但是,我还有一个ON UPDATE CASCADE外键,用于表中的一个字段,应该能够成功。目前它被UPDATE触发器阻止。

因此,我的问题是:
1.是否有可能在触发器中检测到它是由ON UPDATE CASCADE触发的?
2.是否可以将触发器设置为不触发ON UPDATE CASCADE

1 个答案:

答案 0 :(得分:0)

  1. 不直接,所以没有
  2. 否。
  3. 说实话,这是您在不考虑所有路径时遇到的问题。在开发过程中始终不考虑管理/维护任务。所以也许现在是重新考虑这种设计的时候了。如果某些内容已“完成”,为什么可以通过级联选项删除它?这是一些清洗/维护操作的一部分吗?如果是这样,那可能是解锁解决方案的关键。这个search有使用context_info的建议。