2014-12-05 68 views
0

我使用下面的書面查詢到的外鍵添加到現有場的數據表:如何擺脫掉錯誤的添加外鍵包含數據

ALTER TABLE ServiceDetails 
ADD CONSTRAINT fk_ServiceDetails 
FOREIGN KEY (OCF_ID) 
REFERENCES OCF_Commerce(OCF_Internal_ID); 

但我正在逐漸執行查詢後發生錯誤。我錯過了什麼?

的錯誤信息是:

消息547,級別16,狀態0,第1行
ALTER TABLE語句衝突與外鍵約束 「fk_ServiceDetails」。數據庫「TrulyDB」,表「dbo.OCF_Commerce」,列「OCF_Internal_ID」發生衝突。

+0

表檢查是否你ServiceDetails擁有所有的OCF_Internal_ID的OCF_ID OCK_Commerce Tbale – Rajesh 2014-12-05 09:58:21

+0

FK和PK的數據不匹配,例如有194的FK但沒有194的PK。 – 2014-12-05 10:03:17

回答

0

你可能對你的表數據不一致 嘗試運行

select * 
from ServiceDetails 
where OCF_ID not in (select OCF_Internal_ID from OCF_Commerce) 

這將輸出與ID在主表中不存在的所有行