繁体   English   中英

标识是否由ON UPDATE CASCADE触发了Update触发器

[英]Identify if an Update trigger was fired by ON UPDATE CASCADE

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

但是,对于表中的字段之一,我也有一个ON UPDATE CASCADE外键,应该可以成功。 当前,它被UPDATE触发器阻止。

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

  1. 不是直接的,所以没有
  2. 没有。

老实说,这是您没有考虑所有路径时遇到的问题。 在开发过程中始终会考虑一些管理/维护任务。 因此,现在也许是时候重新考虑这种设计了。 如果某些事情“完成”了,为什么可以通过级联选项将其删除? 这是某些清洗/维护操作的一部分吗? 如果是这样,那可能是您解锁解决方案的关键。 搜索提供了有关使用context_info的建议。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM