gpt4 book ai didi

MySQL - 级联更新有效,但级联删除无效

转载 作者:行者123 更新时间:2023-11-29 20:55:12 25 4
gpt4 key购买 nike

有两个表; proizvodi(父表)和normativ(子表),关系 1:N。

父表上的主键是字段 Sifra,子表上的主键是 SifraProizvoda。当我在父表中进行更新时,更改会反射(reflect)在子表上,但是如果我尝试删除父表中的某些内容,则会收到错误:

/* SQL Error (1451): Cannot delete or update a parent row: a foreign key constraint fails (racuni.cijenapro, CONSTRAINT FK_cijenapro_proizvodi FOREIGN KEY (SifraProizvoda) REFERENCES proizvodi (Sifra) ON DELETE NO ACTION ON UPDATE CASCADE) */

这是表的结构link

我做错了什么?

最佳答案

您还应该有一个ON DELETE CASCADE 以及ON UPDATE CASCADE。您现在拥有的是ON DELETE NO ACTION,因此外键关联阻止您删除父级,因为它不想要孤立的子级。如果您也有ON DELETE CASCADE,则父条目和子条目都将被删除。您可以使用ALTER TABLEON DELETE CASCADE 添加到表中。您必须首先删除现有约束,因为 ON UPDATE CASCADEON DELETE CASCADE

只允许一个约束

关于MySQL - 级联更新有效,但级联删除无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37701092/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com