如何在Mysql中为现有数据设置auto_increment起始值[重复]

Posted

技术标签:

【中文标题】如何在Mysql中为现有数据设置auto_increment起始值[重复]【英文标题】:How can I set the auto_increment start value in Mysql for existing data [duplicate] 【发布时间】:2015-03-25 11:40:46 【问题描述】:

假设我有一个包含 3 行数据的表,并且我想添加一个 auto_increment 列,我使用以下语法并且它可以工作

ALTER TABLE tableA ADD id BIGINT unsigned NOT NULL unique AUTO_INCREMENT

但当前行将在新添加的 auto_increment 列中获得类似 1,2,3 的值。

我希望这些值是 1001,1002,1003。有没有办法做到这一点?

注意我确实知道运行

ALTER TABLE tableA AUTO_INCREMENT=1001

可以,但只适用于新行,不适用于现有数据

【问题讨论】:

请看我的编辑所提到的问题只涉及新行,而不是现有行? 【参考方案1】:

您可以使用 auto increment 关键字创建值来指定起始编号。

Alter table add column blah int(11) auto increment 10000;

【讨论】:

以上是关于如何在Mysql中为现有数据设置auto_increment起始值[重复]的主要内容,如果未能解决你的问题,请参考以下文章

更新 MySQL 数据库中所有表的 AUTO_INCREMENT 值

如何将 AUTO_INCREMENT 添加到现有列?

怎么重置mysql的自增列AUTO_INCREMENT初时值

mysql

如何在 Java 中为自动增量表创建查询?

mysql插入数据后返回自增ID的方法(AUTO_INCREMENT)