在开发中,我们往往想把 mysql 自增字段的值重置为 1,可以设置 auto_increment 为 1,如想重新跑数据等;或者还有就是赋一个指定的值开始自增。
解决方法
首先需要删除相应的数据:
mysql> DELETE FROM table_name;
然后执行自增重置操作:
mysql> ALTER TABLE tablename AUTO_INCREMENT = 1;
如上操作相当于删除数据从来。
需要注意的是,在 InnoDB 引擎中,auto_increment 值不能设置小于等于当前最大值(也可以理解为不能设置已经分配的值),如在 InnoDB 引擎中重置成了小于等于当前最大值,MySQL 不会报错,同样 auto_increment 重置值也不会生效。
还有一个比较极端的方法是删除表(DROP TABLE
)后重建,不提倡这种更暴力的方式。