1. 程式人生 > >主鍵對數據更新的影響

主鍵對數據更新的影響

per span 設置 重復值 ron class 執行 lang spa

主鍵是在同一張表中必須是唯一的,如果在進行數據更新的時候指定的主鍵與表中已有的數據重復的話則會導致違反主鍵約束的異常。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來查看表中的數據:

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

主鍵對數據更新的影響