如果我触发查询删除,它只从一个表中删除,而不是两个表。 请帮我找到解决方案。在下面给出了我试过的查询。
DELETE m.* FROM master m
INNER JOIN field f ON m.id = f.label_id
WHERE f.id='13'
Mater表正在删除但不是字段表。
答案 0 :(得分:2)
为了删除表m
和f
中的条目
加入结果:
DELETE m,f FROM master m
INNER JOIN field f ON m.id = f.label_id
WHERE f.id='13';
为了从联合结果中删除表m
中的条目:
DELETE m FROM master m
INNER JOIN field f ON m.id = f.label_id
WHERE f.id='13';
为了从联合结果中删除表f
中的条目:
DELETE f FROM master m
INNER JOIN field f ON m.id = f.label_id
WHERE f.id='13';
注意:更好的方法可能是设置具有行为ON DELETE CASCADE
的外键约束。但为此你需要 InnoDb 作为你的存储引擎。