从已被触发器修改的表中删除记录

时间:2018-02-01 10:11:30

标签: mysql sql triggers

我有两张桌子,即#34; ab"和" eff"在mysql数据库中。 我的要求是,当" ab"中有状态更新时,我需要将该特定记录移动到" eff"并删除" ab"。

中的旧记录

我写了一个更新后的触发器来成功地从" ab"到了" eff"。但是我无法从" ab"删除记录。

抛出的错误如下:无法更新表格' ab'在存储函数/触发器中,因为它已被调用此存储函数/触发器的语句使用。

请建议一种方法,我可以从" ab"。

删除记录

提前致谢!

1 个答案:

答案 0 :(得分:0)

您无法从实施触发器的同一表中删除行。因为在插入MySQL时会锁定表并且不能删除行,因为删除需要锁定以使其处于死锁状态,这就是MySQL不允许这样做的原因。

您需要通过标记删除来处理触发范围。