今天在服务器上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开始。