Php Mysql截断表,自动增量不工作

Php Mysql截断表,自动增量不工作,php,mysql,Php,Mysql,所以我只是截断了我的表,但现在我的主键不会自动递增。每次我向表中添加第二项时,它都会返回1062:键“PRIMARY”的重复项“0” 我想当你截断一个表时,它只会将自动增量重置回1 我四处寻找我能做什么,但我遇到很多人说只是截断 我所做的 "TRUNCATE TABLE mytable;" 我一定是做错了什么。这个错误不会影响Mysql 5.0,它可以在6.0、5.1.23和5.1BK上重复出现 以下是现成的,有效的解决方法是在表被截断后更改autoinc值 截断后立即重新初始化autoin

所以我只是截断了我的表,但现在我的主键不会自动递增。每次我向表中添加第二项时,它都会返回1062:键“PRIMARY”的重复项“0”

我想当你截断一个表时,它只会将自动增量重置回1

我四处寻找我能做什么,但我遇到很多人说只是截断

我所做的

"TRUNCATE TABLE mytable;"

我一定是做错了什么。

这个错误不会影响Mysql 5.0,它可以在6.0、5.1.23和5.1BK上重复出现

以下是现成的,有效的解决方法是在表被截断后更改autoinc值

截断后立即重新初始化autoinc值


alter table tablename AUTO_INCREMENT=n/*根据需要设置n*/

从MySQL 5.0.13开始,无论是否存在外键约束,自动增量计数器都会通过TRUNCATE TABLE重置为零

您需要做的只是:

设置外键检查=0

截断表并将其更改回

设置外键检查=1

一旦触发TRUNCATE,表处理程序就不会记住上次使用的AUTO_增量值,而是从头开始计数。
即使是MyISAM和InnoDB也是如此,它们通常不重用序列值。

用户此查询将起作用


ALTER TABLE
TABLE\u name
CHANGE
TABLE\u id
TABLE\u id
INT(11)NOT NULL AUTO\u INCREMENT

能否提供
descripe mytable
的输出。确保主键列仍定义为AUTO\u INCREMENT。请尝试再次删除和创建表,我有一种感觉,觉得这是一只虫子,但我不确定