mysql 更改自动增长字段值的重新设定

时间:2021-09-18 06:12:43

今天在服务器上MYSQL库里的一个表插入数据,主键id是auto_increment自动增长类型的。
发现插入的值从2247734开始,而实际上id的最大值才22722,不明原因。

删除了新增的,optimize表一下,重新插入,还是不行,从2247735开始。

无奈只好去找解决办法,看到一条语句,可以查询这个表的auto_increment值:
SELECT AUTO_INCREMENT FROM information_schema.tables WHERE table_name = 'hx_9enjoy';
查了一下,显示2247735。

怎么更新它呢?于是我幼稚的想UPDATE它一下,

UPDATE information_schema.tables SET AUTO_INCREMENT = '22723' WHERE table_name = 'hx_9enjoy';

结果提示:ERROR 1044 (42000): Access denied for user 'root'@'localhost' to database 'infor
mation_schema'
用root也不行:(

继续想办法,终于查到:

ALTER TABLE `hx_9enjoy` auto_increment='22723' ;

执行成功,继续插入就从22723开始了:)

ITOKIT.COM提示:如果表中数据没有用。如果直接删除数据,自动增长ID还是不会从1开始的,可以利用“清空数据表”。这样自动增长ID也将会从1开始。