我想删除tableA
同时删除tableB
中所有匹配tableA.A_ID = tableB.A_ID
的行
目前我有一个外键设置为CASCADE
on delete and update set onTableB
fortableB.A_ID
。
最佳答案
通过暂时关闭约束
SET SQL_SAFE_UPDATES = 0;
DELETE FROM tableB b WHERE EXISTS ( SELECT * FROM tableA a WHERE a.A_ID = b.A_ID )
DELETE FROM tableA;
SET SQL_SAFE_UPDATES = 1;