约束不会调用MySQL触发器

时间:2013-03-06 20:15:59

标签: mysql triggers constraints

我有两个(InnoDB)表,其中包含UPDATE,INSERT和DELETE的触发器。如果我直接在桌子上工作,它们工作正常。当我删除tableA中的一行时,我有一个外键约束,tableA.id引用的tableB中的所有行也被删除。这也有效,但问题是:

tableA上的DELETE触发tableA的DELETE触发器。然后约束删除tableB 处的行,但没有DELETE触发器,用于调用tableB。为什么?约束不会触发触发器吗?

感谢。

(触发器在删除后。也尝试使用BEFORE DELETE但没有成功。)

1 个答案:

答案 0 :(得分:8)

如果删除是由外键引起的,则不会触发触发器。

From the manual

  

外键操作不会激活触发器。