程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> mysql提示 Duplicate entry..for key錯誤解決辦法

mysql提示 Duplicate entry..for key錯誤解決辦法

編輯:MySQL綜合教程

Duplicate entry...for key...錯誤原因:這個錯誤的原因是主鍵的唯一值重復,在對數據庫進行修改、插入操作時,一但主鍵的唯一值重復就會報此錯誤,有時在表中存在多個主鍵時,對表操作仍然報此錯誤。

如:Duplicate entry for key 3的意思是表的第3個字段出現了唯一索引的限制,需要插入其它不重復的值或去掉字段的unique屬性。

看一個實例

如果您的站點上有 phpMyAdmin ,還可以通過它他檢查下您的數據庫中出錯的表的自增字段的當前自增值是否和該表中自增字段的最大值相同,如果相同則會出現該錯誤。

如何檢查?

1)進入您的 phpMyAdmin ,然後在左側選擇您出錯的數據庫。
1.gif

2)選擇您出錯的表,並找到該表的自增字段,有 auto_increment 標識的字段即為該表的自增字段。
2.gif

3)點擊浏覽,然後根據自增字段降序排序,記下自增字段的當前最大值。
3.gif

4)點擊該頁面上方的操作,會看到“表選項”中的 auto_increment 項,這就是下一條你要插入的數據的自增字段的值,如果這個值和剛才記下的當前自增字段的最大值一樣,就會報錯了,所以將這個值改為大於剛才記下的當前自增字段的最大值,然後點擊“執行”,即可解決問題。
示例中給出的當前自增字段的最大值為 54 ,而下一條你要插入的數據的自增字段的值為 55 ,這樣則不會有問題。
4.gif

還有一種情況,那就是自增字段的數值已經達到該字段的最大值,即不能再增加了,這種情況也會出現同樣的錯誤提示。上面提到我朋友論壇的錯誤信息正是此原因。自增字段的數據類型是mediumint(8),因為數據出了問題,導致該字段值超出了最大范圍16777215!把出錯的數據修正即可解決

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved