【问题标题】:How to Cascade on Delete Manually如何手动级联删除
【发布时间】:2014-01-03 12:01:31
【问题描述】:

我有一个表,例如名为Updates

Update_ID | Time

还有另一个名为Announce_Updates的表

Announce_ID | Update_ID

它们在删除时都有级联,但我能想到一些时候我关闭了外键检查并忘记重新激活。在那一刻,我可能已经删除了Updates 表上的一些数据,这些数据没有在Announce_Updates 表上自动删除。

Announce_UpdatesUpdate_ID 的总数大于Updates 主表本身的总数时,我意识到出了点问题。

有没有办法解决这个问题?

最好的问候。

【问题讨论】:

标签: mysql


【解决方案1】:

如果有孤立的Announce_Updates 记录,您可以删除任何没有匹配Update 的记录:

DELETE FROM Announce_Updates WHERE Update_ID NOT IN (SELECT Update_ID FROM Updates)

与往常一样,请确保在运行互联网上某些人告诉您的任何查询之前备份数据库。

【讨论】:

    猜你喜欢
    • 2011-12-01
    • 2011-04-17
    • 1970-01-01
    • 1970-01-01
    • 2012-07-17
    • 2022-01-16
    • 2019-11-24
    • 1970-01-01
    • 2015-04-24
    相关资源
    最近更新 更多