开发者社区 问答 正文

MySQL-用一个查询从多个表中删除

我有4个表,每个表存储有关用户的不同信息。每个表都有一个带有user_id的字段,用于标识哪个行属于哪个用户。如果要删除用户,这是从多个表中删除该用户信息的最佳方法吗?我的目标是在一个查询中做到这一点。

查询:

"DELETE FROM table1 WHERE user_id='$user_id'; DELETE FROM table2 WHERE user_id='$user_id'; DELETE FROM table3 WHERE user_id='$user_id'; DELETE FROM table4 WHERE user_id='$user_id';";

展开
收起
保持可爱mmm 2020-05-11 11:19:18 470 分享 版权
1 条回答
写回答
取消 提交回答
  • 您可以使用ON DELETE CASCADE选项在表上定义外键约束。

    然后,从父表中删除记录将从子表中删除记录。

    检查此链接:http : //dev.mysql.com/doc/refman/5.5/en/innodb-foreign-key-constraints.html来源:stack overflow

    2020-05-11 11:19:32
    赞同 展开评论