首页 > 解决方案 > 在父 MySQL 之前删除子

问题描述

我正在开发一个数据库,其中有一个主表与另一个表上的一对一关系,该表使用外键关系引用。

以前,我使用ON DELETE CASCADE的是外键表,但我已经实现了一个跟踪表,该表旨在跟踪任何被删除的内容。MySQL 不支持外键删除级联触发器,因此当级联发生时,此触发器不会触发删除。我的解决方法是首先从父表触发器中删除子行,这将导致外键表触发器触发,从而跟踪子行和父行的删除。我只是想问这是否是可接受的做法,或者 MySQL 是否可能有其他更好的实现。在主键(父表)上,我放置了一个BEFORE DELETE触发器以在外键表中进行此删除,然后AFTER DELETE在父表中跟踪主键行的删除。

想法?

标签: mysql

解决方案


推荐阅读