22

在我的表中,我有自动增量 ID,其编号为 1 到 66,440,下一个数字是 88846790 + 从这里到 88846900 的增量。

66440到88846790之间没有记录

我希望我的下一个自动增量编号为 66441,但它占用 88846791,你能帮我将下一个自动增量设置为 66441,

4

7 回答 7

23
alter table tablename AUTO_INCREMENT=664441

应该做

于 2013-07-05T06:39:00.383 回答
10

您可以使用ALTER TABLE来更改 auto_increment 值:

ALTER TABLE my_table AUTO_INCREMENT = 66441;

有关更多详细信息,请参阅MySQL 参考

请记住重新插入 id 高于 88846790 的所有行

如果您不删除 ID 高于 66441 的行,

自动增量的变化什么也不做。

例子:

 ID    Value
----  --------
  1      C
  2      A
  4      D
 50      A
 51      C

如果我想将自动增量更改为5我需要先删除或重新插入50and 51。因为否则下一个自动增量52无论如何都会发生。

根据数据的数量和重要性,通常最好的做法是:没有

因为这些主 ID 与其他行有关系,甚至可能基于 web-url 的 opn 这些 ID。除非您创建某种脚本,否则这一切都会失败。

于 2013-07-05T06:38:48.483 回答
3

您可以使用如下所示的 ALTER TABLE 命令,

ALTER TABLE tablename AUTO_INCREMENT = 66441
于 2013-07-05T09:24:08.417 回答
3

我很难让它在 phpMyAdmin 中工作,甚至直接输入查询。如果浏览要重置索引的表,然后点击Operations,应该可以AUTO_INCREMENT直接在 下设置Table options。然后只需单击 Go 就可以了!

于 2013-11-13T04:21:56.740 回答
1

您可以使用更新自动增量字段ALTER TABLE

ALTER TABLE tablename AUTO_INCREMENT = 66441
于 2013-07-05T06:38:54.207 回答
1
ALTER TABLE tbl AUTO_INCREMENT = 66441;

如果您没有大于 66441 的记录 ID,那么它应该可以工作。

于 2013-07-05T06:40:13.100 回答
0

我喜欢使用:

ALTER TABLE tablename AUTO_INCREMENT=1

从那时起,引擎无论如何都会使其成为最低的可用值。

于 2017-12-11T23:42:14.050 回答