条件AFTER DELETE触发器和ON DELETE CASCADE

时间:2014-06-24 10:41:32

标签: android sqlite triggers

我有一个触发器,每个表取决于列的值(id_op更精确)在另一个表中插入,类似这样(来自entity表的示例):

CREATE TRIGGER entity_delete_trigger AFTER DELETE ON entity
FOR EACH ROW
WHEN old.id_op IS NULL OR old.id_op <> -2
BEGIN
    -- insert some info into another table
END

还有其他表通过FK引用entity,并且所有表都有ON DELETE CASCADE。这意味着如果我执行DELETE FROM entity,所有引用entity的表将级联此删除并执行AFTER DELETE触发器。我的问题是在这种情况下,我无法通过级联来控制这些触发器。

显而易见的解决方案是首先正确更新引用此表的表中的所有行,但这看起来太昂贵了。有没有人对如何解决这个问题有更好的想法?提前谢谢。

0 个答案:

没有答案