0

auto_incrementphpmyadminの列を有効にしようとすると、常に次のエラーが発生します。

#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。ああ。

4

2 に答える 2

1

これを試して: alter table Persons modify id integer unsigned primary key auto_increment;

idは関心のある列です

于 2012-02-20T12:06:07.043 に答える
0

既存のテーブルにを追加しようとするときauto_incrementは、テーブルにすでにあるすべてのキー値がすべて一意であることを確認する必要があります。

列の値をに設定すると機能するNULLはずです。mySQLは、値を自動インクリメント値で自動入力します。

于 2012-02-20T11:39:58.173 に答える