从多个表中删除行CONSTRAINT ERROR

时间:2016-06-30 17:49:03

标签: java sql

我试图同时删除两个表中相互连接的信息但不能给我这个错误:

  

无法删除或更新行父:外键约束失败(sociospagamentosCONSTRAINT FK_FOREIGN KEY ( nrSocio`)ON DELETE NO ACTION ON UPDATE NO ACTION)

screenshot

2 个答案:

答案 0 :(得分:0)

您可以更改表格设计并建立关系delete cascade。在这种情况下,子行将自动删除。

或者你可以删除像这样的单一语句中的记录

delete c, p
from parent_table p
left join child_table c on p.id = c.parent_id
where p.id = 1

答案 1 :(得分:0)

如果从父表中删除,则子tablr中的数据将无法引用父表。这就是为什么直到有一个引用ib子表,你不能从父表中删除。摆脱这种情况的方法很少。

  1. 从子表中删除数据,然后从父表中删除

  2. 您可以在表格中使用删除级联关系。  在这种情况下,每当您从父表中删除数据时,子表中的数据也将被删除。

  3. 可以删除外键约束以删除这不是一个好方法。