>  기사  >  데이터 베이스  >  MySQL定义主键自增长(AUTO_INCREMENT)出错

MySQL定义主键自增长(AUTO_INCREMENT)出错

WBOY
WBOY원래의
2016-06-07 16:59:161043검색

今天给项目的一个表设置自增长主键mysqlgt; ALTER TABLE `users` CHANGE `id` `id` INT(11) NOT NULL AUTO_INCREMENT; 运行却报

今天给项目的一个表设置自增长主键

mysql> ALTER TABLE `users` CHANGE `id` `id` INT(11) NOT NULL AUTO_INCREMENT;

运行却报错 ERROR 1062 (23000): Duplicate entry '1' for key 1

表中原有数据如下
+----+------+
| id | name |
+----+------+
| 0 | AAA |
| 1 | BBB |
| 2 | CCC |
+----+------+-
同事tzngvi说可能是 id = 0 的那条数据有问题,把 id = 0 那条数据删除后,,再设置自增长,问题解决。
又去 MySQL 官网查了一下,AUTO_INCREMENT是默认从 1 开始的。

To start with an AUTO_INCREMENT value other than 1, you can set that value with CREATE TABLE or ALTER TABLE, like this:
mysql> ALTER TABLE tbl AUTO_INCREMENT = 100;

linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.