首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >级联删除中的触发调用

问级联删除中的触发调用
EN

Stack Overflow用户
提问于 2011-05-18 15:07:16
回答 4查看 12.7K关注 0票数 30

我在MySQL有"A“桌。它对其他一些表("B","C","D“...)有一些级联删除的引用。当某些东西从"A“中删除时,我需要使用触发器。当我直接从"A“中删除记录时,此触发器起作用。但它不适用于级联删除。有没有任何版本的MySQL可以让我的触发器与级联删除一起工作?或者,也许还有另一种方法调用

EN

回答 4

Stack Overflow用户

发布于 2011-05-23 17:56:33

来自http://dev.mysql.com/doc/refman/5.6/en/innodb-restrictions.html

级联的外键操作不会激活触发器

换句话说,您不能将触发器与级联删除一起使用。

另请参阅相关错误:

https://bugs.mysql.com/bug.php?id=11472

:

  • MySQL
票数 36
EN

Stack Overflow用户

发布于 2015-01-30 09:02:41

总结@Niel de Wet和@Browny Lin的答案:

  1. 可悲的级联删除不会激活MySQL中的触发器。
  2. 一种解决方案是不使用级联删除,而是通过另一个触发器实现自动删除。
票数 6
EN

Stack Overflow用户

发布于 2016-12-30 21:22:47

让我分享一下,从我发现这个问题存在的第一天起,我就一直在“修复”这个问题。我将触发器从级联表复制到第一个被直接删除的表中。它就是这样的。

很多时候都是复制/粘贴的问题,偶尔需要大量重写代码。

最好的部分是,当Oracle最终修复这个错误时,您只需从上述表中删除触发器代码即可。瞧!

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6041064

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档