追蹤 SQL Server 的外鍵約束錯誤
SQL Server 經常產生「INSERT 語句與 FOREIGN KEY 限制衝突」錯誤。當您嘗試將資料插入到透過外鍵關係連結到另一個表的表中時,就會發生這種情況。
問題:
如果目標表中的外鍵值與參考表中的任何現有主鍵不匹配,則在 INSERT 操作期間會出現此錯誤。
錯誤訊息範例:
<code>Msg 547, Level 16, State 0, Line 1 The INSERT statement conflicted with the FOREIGN KEY constraint "FK_Sup_Item_Sup_Item_Cat". The conflict occurred in database "dev_bo", table "dbo.Sup_Item_Cat". The statement has been terminated.</code>
此訊息表示嘗試插入 Sup_Item
表失敗,因為 sup_item_cat_id
外鍵值 ('123123') 不以 Sup_Item_Cat
表中的主鍵存在。
解:
修復方法很簡單:確保您插入的外鍵值與引用表中的現有主鍵相符。 在我們的範例中,匹配的 sup_item_cat_id
必須已存在於 Sup_Item_Cat
中。
使用 SQL Server Management Studio 的 sp_help
指令檢查外鍵約束和相關表。例如,sp_help 'dbo.Sup_Item_Cat'
提供有關該表的外鍵約束的詳細信息,幫助您識別引用的表和列,並確認您的 INSERT 語句使用有效的數據。
以上是為什麼 My SQL Server INSERT 語句與 FOREIGN KEY 約束衝突?的詳細內容。更多資訊請關注PHP中文網其他相關文章!