PHP中MySQL设置库中的表以奇数自增的解决方法

今天突然被问到一个问题,mysql数据库插入表数据时,设置了ID自增,但是插入数据后,ID却呈奇数增加,不是123456类型,而是13579形式,突然有点懵,研究了一会,发现是auto_increment步长的问题,下面就具体来说下怎么解决:

插入数据后发生表内ID按奇数增加,如下图:
《PHP中MySQL设置库中的表以奇数自增的解决方法》

查看自增步长:show variables like 'auto_increment%';

《PHP中MySQL设置库中的表以奇数自增的解决方法》

将自增步长改为1:set @@auto_increment_increment=1;

《PHP中MySQL设置库中的表以奇数自增的解决方法》

此时用truncate清空表数据重新插入就可以了

《PHP中MySQL设置库中的表以奇数自增的解决方法》

《PHP中MySQL设置库中的表以奇数自增的解决方法》

补充点吧,要是你的数据库插入数据就成这样,说明你的数据库配置文件里的auto-increment-increment=2数据库的一大特点是当前会话修改了,退出再进就恢复,所以你要是想永久修改auto-increment-increment的自增步长,需要去配置文件内修改下,怎么修改我就不说了哈。

点赞