前几天我安装了 MySQL Workbench,访问了我公司的数据库,并为自己制作了一个可以使用的表。到目前为止,一切都很好。问题是,我注意到我的auto_increment以 2 递增 2。例如:
ID NAME
1 Paul
3 Jack
5 Louis
7 John
...
当我这样做时,SHOW VARIABLES LIKE 'auto_inc%'
我得到了这个:
'auto_increment_increment', '2'
'auto_increment_offset', '1'
所以我尝试设置auto_increment_increment
为1:
SET @@auto_increment_increment=1
在再次验证后,SHOW VARIABLES LIKE 'auto_inc%'
我确认它“有效”了结果:
'auto_increment_increment', '1'
'auto_increment_offset', '1'
但是我的 ID仍在2 by 2中递增。
我第一次这样做时,它运行良好,然后我关闭了 MySQL Workbench,发现当我再次打开它时,它再次auto_increment_increment
设置为2。现在我试图再做一次,但它似乎不再起作用了。
有人可以帮我解决这个问题吗?
多谢你们。
使用的前缀:
是相同的:
修改此设置时,它仅与您当前的会话相关。
要进行更永久的修复,请尝试:
是相同的:
这两个变量都有全局值和会话值。因此,您很可能只更改了关闭 MySQL Workbench 时消失的会话值。
另一个需要注意的警告是
还可能欺骗您的是,当您更改增量大小时计算下一个自动增量值的方式。它不使用最后存储的列值,而是使用公式计算下一个最大值
而 N 是一个整数,因此新值大于现有的最大值。
请参阅auto_increment_increment文档详细了解它的工作原理。