我有以下查询:
ALTER TABLE ROUTE ADD FOREIGN KEY (RID) REFERENCES RESERVATION(RID) ON DELETE CASCADE
但它会产生错误:
#1452 - Cannot add or update a child row: a foreign key constraint fails (`SmarTrek`.`#sql-91e_d09`, CONSTRAINT `FK_RID` FOREIGN KEY (`RID`) REFERENCES `RESERVATION` (`RID`) ON DELETE CASCADE)
在设计师模式中,这是它的样子:
答案 0 :(得分:1)
这意味着您已经在ROUTE表中拥有不满足外键约束的数据。
要查找违规记录,以便将其更新为其他值(存在),可以使用
select *
from route
where rid not in (select rid from reservation)
答案 1 :(得分:0)
可能有两个原因
ROUTE
表格中可能有RID
RESERVATION(RID)
的行
ROUTE (RID)
& RESERVATION(RID)
两者应该相同(未签名/签名)