MySQL Workbench - 改变下一个自动增量值不起作用

时间:2014-03-26 18:51:48

标签: mysql

我正在尝试使用MySQL工作台更改给定表的下一个自动增量值。下一个自动增量值当前设置为3,我试图使其成为2.每当我尝试应用更改时,工作台运行以下代码。

ALTER TABLE `mysql_schema`.`mysql_table` 
AUTO_INCREMENT = 2 ;

然而,在运行此代码后,未应用更改,并且下一个自动增量值仍为3。问题是什么?为什么自动增量值不会改变?我试图手动执行代码,但它也没有用。

4 个答案:

答案 0 :(得分:6)

我知道这个答案在初始请求后很长一段时间,但它可能会帮助那些遇到同样问题的人。

所以,你有两行,删除其中一行,下一个增量值是3.要改变这个' 3'到' 2'并允许未来的增量值来自' 2'而不是' 3',请尝试以下方法。

来自' Schemas'列(左侧):

  • 右键单击表名。
  • 选择'更改表格' (或按下'扳手'图标)。
  • 向下看灰色区域'有'申请'和'还原'按钮
  • 在这个'灰色区域的左侧'是6个标签。
  • 其中一个标签是'选项'选项卡 - 选择选项选项卡。
  • 在'一般选项'部分是“自动增量”'框
  • 类型' 2'进入'自动增量'框并按“应用”#39;按钮。
  • 在结果框中,按'应用'然后完成'的按钮。
  • 返回表格并添加新行,然后按“应用”按钮。
  • 增量列的值现在为' 2'。

我希望这适合你。

答案 1 :(得分:1)

您无法将计数器重置为小于或等于任何已使用过的值。
对于MyISAM,如果该值小于或等于AUTO_INCREMENT列中当前的最大值,则该值将重置为当前最大值加1。 对于InnoDB,如果该值小于列中的当前最大值,则不会发生错误,并且不会更改当前序列值。

MySQL official alter doc

答案 2 :(得分:1)

在MySQL Workbench中, -点击表格,即可对其进行编辑 -在该框的最底部,您会看到其他列,特别是: “列”,“索引”,“外键”,“触发器”,“分区”,“选项”,“插入”,“特权” -点击“选项” -您可以在此处将“自动增量”设置为所需的值。

答案 3 :(得分:0)

请参阅How to set initial value and auto increment in MySQL?

有关于AUTO_INCREMENT和“=”之间的空格和值的注释。删除空格。并试试。