簡體   English   中英

添加外鍵約束時出錯

[英]error adding a foreign key constraint

我有以下查詢:

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)

在設計器模式下,外觀如下: 在此處輸入圖片說明

這意味着您已經在ROUTE表中擁有不滿足外鍵約束的數據。

要查找有問題的記錄,以便可以將它們更新為其他值(存在),可以使用

select *
from route
where rid not in (select rid from reservation)

可能有2個原因

  • ROUTE TABLE中可能有一些行的RIDRESERVATION(RID)中不存在
  • 或檢查ROUTE (RID)RESERVATION(RID)數據類型應相同(未簽名/已簽名)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM