MySQL的AUTO_INCREMENT列是如何重置的?

时间:2011-02-23 14:51:56

标签: mysql auto-increment

关于重置MySQL的AUTO_INCREMENT列的几个问题。

首先不删除/创建表,或通过TRUNCATE TABLE删除行(请参阅该代码的页脚) - 这是正确的方法吗?

ALTER TABLE [insert_TABLE_name] AUTO_INCREMENT = 1

接下来,将值设置为01 - 为什么?

奖金,任何额外的建议。

2 个答案:

答案 0 :(得分:3)

它设置为您在alter table查询中使用的任何内容,在您的情况下为1。但是,由于您没有删除行,您现在可能已经设置了主键违规,因为您的下一个插入行将尝试使用该1并与先前创建的具有相同键的行冲突

答案 1 :(得分:1)

您无法将计数器重置为小于或等于任何已使用过的值。

你试图将auto_increment计数器恢复为1,但它已经高于该值,并且由于你无法将其重置为小于已经使用的任何值的值,它不起作用。