我有5张表
用户
-id
-influencer_id
影响者
-id
分类
-catogory_id
-influencer_id
平台
-influencer_id
-platform_id
任务
-influencer_id
-task_id
我想删除一个影响者并同时删除所有记录。怎么做?
答案 0 :(得分:0)
在创建表时使用ON DELETE CASCADE。像:
CREATE TABLE child (
id INT,
parent_id INT,
INDEX par_ind (parent_id),
FOREIGN KEY (parent_id)
REFERENCES parent(id)
ON DELETE CASCADE
) ENGINE=INNODB;
http://dev.mysql.com/doc/refman/5.6/en/create-table-foreign-keys.html
答案 1 :(得分:0)
首先从其他表中删除记录。您可以使用以下查询:
DELETE FROM Users u
USING Influencers i
WHERE u.id = i.id;
您可以对其他表执行相同操作,然后在DROP
Influencers
表中执行相同的操作。
DROP TABLE Influencers;