当我尝试在phpmyadmin中的列上启用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 :(得分:1)
试试这个:
alter table Persons modify id integer unsigned primary key auto_increment;
id是感兴趣的列
答案 1 :(得分:0)
尝试将auto_increment
添加到现有表时,您需要确保表中已有的所有键值都是唯一的。
将列值设置为NULL
应该有效。然后mySQL将使用自动增量值自动填充值。