MySQL;如何重置id并设置新的,开始于

MySQL; How to reset id and set new, start at

我的一个 MySQL 表中的 ID 实际上是从 34567 开始的(34568、34569、34570…)。

如何重置所有这些 ID 并将 123 设置为起始值:123、124、125、126……?

或者有没有办法让每个id -34444: 34567-34444=123?


P.S。 ALTER TABLE table_name AUTO_INCREMENT = 124; 不是我要找的。

这是您要找的吗:

select (id-34444) as id from your_table;

如果你已经删除了所有table条记录并且你想从123开始为自增字段,那么使用以下命令:

ALTER TABLE table_name AUTO_INCREMENT=123;

正如其他人所说,您可能不应该担心 ID 的值。根据定义,它们不应该有任何实际意义。

话虽如此,您应该能够像更新任何其他专栏一样更新它们:

update table_name
set id = id - 34444

然后您可以重置起始 AUTO_INCREMENT 值,以便插入的下一行具有顺序 ID:

ALTER TABLE table_name AUTO_INCREMENT = <whatever the maximum id is + 1>;

请注意,这样做会重建 table,因此如果它有很多行,可能需要一段时间。