我有几个表,在其中我创建了一个对象ID为Int或Bigint,在这两种情况下,它们似乎都会自动递增10(即,第一个插入是对象ID 1,第二个是对象ID 11,第三个是对象ID)是对象ID 21等)。两个问题:为什么这样做呢?那是问题吗?
3 回答
胡说叔叔
TA贡献1804条经验 获得超8个赞
检查自动增量的种子值未设置为10。
您可以通过以下方式检查:
SELECT Auto_increment FROM information_schema.tables WHERE table_name='the_table_you_want';
如其他地方所述,您可以使用系统变量@@ set_auto_increment_increment进行更改
SET @@auto_increment_increment=1;
如果要以一个以外的数字开头这些值,可以执行以下操作:
ALTER TABLE tbl AUTO_INCREMENT = 100;
万千封印
TA贡献1891条经验 获得超3个赞
请不要更改auto_increment_increment。ClearDB是故意这样做的。在文档中对此进行了解释:
ClearDB使用循环复制来提供Master-Master MySQL支持。因此,必须配置诸如auto_increment键(或序列)之类的某些东西,以便在所有情况下一个主机不使用与另一个主机相同的键。为此,我们将MySQL配置为跳过某些键,并强制MySQL对每个使用的键使用特定的偏移量。之所以使用10而不是2,是为了将来的发展。
添加回答
举报
0/150
提交
取消