这个问题已经在这里有了答案 :
如何从MySQL中的多个表中删除? (7个答案)
2年前关闭。
我有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';";
您可以使用ON DELETE CASCADE选项在表上定义外键约束。
ON DELETE CASCADE
然后,从父表中删除记录将从子表中删除记录。
检查此链接:http : //dev.mysql.com/doc/refman/5.5/en/innodb-foreign-key- constraints.html