我有一个大问题。 我需要在此模型DB
上删除multitable上的所有行http://i62.tinypic.com/m7fhap.png
因为当我尝试(DELETE FROM alergia WHERE Grupo = 'Alergia1'
)时会返回此错误
ERROR 1451: 1451: Cannot delete or update a parent row: a foreign key constraint fails (`odontologia`.`alergico`, CONSTRAINT `fk_Personas_has_Alergia_Alergia1` FOREIGN KEY (`Alergia_ID`) REFERENCES `alergia` (`ID`) ON DELETE NO ACTION ON UPDATE NO ACTION)
SQL语句:
DELETE FROM `odontologia`.`alergia` WHERE `ID`='2'"
我可以删除,但使用一些变量和sql语句。 我正在阅读和谈论DELETE CASCADE,但我不能。 我需要删除表中与ID ALERGIAGRUPO有直接或间接关系的任何记录...非常感谢您的帮助
答案 0 :(得分:0)
您需要与Alergico进行连接并首先删除相应的外键行
如果你有多个这样的外键关系,你必须从所有这些表中删除它。
DELETE FROM Alergico
WHERE Alergia_ID in ( SELECT ID FROM Alergia where ID= 2)
然后你可以从Alergia
中删除DELETE FROM Alergia where ID =2