2012-02-20 57 views
0

時候當我試圖在phpMyAdmin的列啓用auto_increment,但我總是得到這個錯誤:#1062 - 重複進入「1」關鍵1使AUTO_INCREMENT

#1062 - Duplicate entry '1' for key 1 

有問題的列PK和INT。它已經有幾行了。正因爲如此,我試過如下:

ALTER TABLE Persons AUTO_INCREMENT=7 

這應該已經設置了自動遞增7開始,所以跳過0〜6已經在該行中存在的......但它沒有工作。或者那是理論。

我在做什麼錯?


更新:

我曾嘗試在塔取出的PK指數和運行查詢的列設置爲NULL。一切都設置爲NULL。我試着再加入auto increment,我得到了以下錯誤:#1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key。我再次嘗試添加一個PK索引,並獲得以下#1062 - Duplicate entry '0' for key 1。哎呀。

回答

0

當嘗試一個auto_increment添加到現有的表,你需要確保所有已經在表中的鍵值都是唯一的。

設置列值NULL應該工作。然後,mySQL將自動填充自動增量值。

+0

列,所以還是通過柱,並用'NULL's替換它,然後再試一次? – 2012-02-20 11:41:11

+0

@Django是啊,或者只是'UPDATE表SET列名= NULL' – 2012-02-20 11:45:53

+0

@Django是,與空更新表列(一定要刪除鍵約束),然後創建自動增量主key.Mysql會爲你做休息。 – rkosegi 2012-02-20 11:47:03

1

試試這個: alter table Persons modify id integer unsigned primary key auto_increment;

是ID感興趣

+0

我會嘗試這樣做,但我只是解決了這一問題。感謝您的嘗試。 – 2012-02-20 12:38:21

相關問題