1. 程式人生 > >主鍵對資料更新的影響

主鍵對資料更新的影響

主鍵是在同一張表中必須是唯一的,如果在進行資料更新的時候指定的主鍵與表中已有的資料重複的話則會導致違反主鍵約束的異常。T_Debt表中FNumber 欄位是主鍵,如果我們執行下面SQL:


UPDATE T_Debt set FNumber = "2" WHERE FPerson="Tom" 

由於表中已經存在一條FNumber 欄位為2 的記錄,所以執行這句SQL 的時候會報出類似如下的錯誤資訊:

違反了PRIMARY KEY 約束"PKT_Debt1920BF5C"。不能在物件"dbo.T_Debt" 中插入重複鍵。

而如果我們為FNumber設定一個不重複值的話,則會插入成功,執行下面的SQL:


UPDATE T_Debt set FNumber = "8" WHERE FPerson="Tom" 

此句SQL則可以正常的執行成功。執行SELECT * FROM T_Debt來查看錶中的資料:

可以看到資料已經被正確的更新到表中了。