以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  建立多个外键约束出错,应该如何解决?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=127078)

--  作者:happyft
--  发布时间:2018/11/5 10:42:00
--  建立多个外键约束出错,应该如何解决?

订单明细与产品编码表通过产品编码建立了外键约束,同时用on update cascade设置了级联更新,即产品编码中的编码更改时自动更新订单明细中的产品编码,

现在想在订单明细与订单之间通过订单编号建立外键约束,也是指定on update cascade,目的是订单主表中的订单编号变更时自动更新明细的订单编号


但出现下面错误"

FOREIGN KEY 约束 \'FK_订单明细_订单编号\' 引入表 \'订单明细\' 可能会导致循环或多重级联路径。请指定 ON DELETE NO ACTION ON UPDATE NO ACTION,或修改其他 FOREIGN KEY 约束。


感觉两个外键约束应该没有冲突啊,如果订单与订单明细建立外键时用了ON UPDATE NO ACTION这样的话订单中的订单编号更新时订单明细中的订单编号会不会自动变更.查了网上很多资料,也没弄明白?


谢谢!


--  作者:有点甜
--  发布时间:2018/11/5 11:30:00
--  

1、检测除此以外,还有没有别的关联;可以单独做一个数据库测试;

 

2、如果有别的关联,看看是否死循环;或者是可以多重路径修改各个表。