如何让mysql从前一行值开始自动递增

Posted

技术标签:

【中文标题】如何让mysql从前一行值开始自动递增【英文标题】:How to get mysql to auto increment starting from the previous row value 【发布时间】:2012-10-16 06:13:31 【问题描述】:

提前感谢您对此提供的帮助。

这是我的问题:

表 A 有我删除的垃圾邮件帐户。这些行就像: 1、2556、2559、2565、2595等

我正在尝试将表 A 导入同一数据库中的空表 B。 表有不同的字段。

表 B 拒绝导入,因为插入设置为自动递增。 mysql表B似乎不想跳过行。

我去了表 A 并将行更新为:

1, 2, 3,4,5..., 18

现在,当我尝试使用 PyphAdmin 在表 A 中创建用户时,user_id 值为 NULL, 我得到的 id 是 2596。Mysql 仍然记得旧的递增序列。 如何让 Mysql 表根据前一行自动递增,以便新的 id 会是 19 吗?

mysql 导入文件在 phpshield 中加密,所以我看不到是什么 继续,无法编辑它。但我认为这是在我排除了所有其他可能性之后发生的事情。

【问题讨论】:

【参考方案1】:
    该字段必须是主键 - PRIMARY KEY (id) 该字段必须为 AUTO_INCREMENT 重置表的自动增量值。

例如-

CREATE TABLE table1(
  id INT(11) NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (id)
);

设置新的自动增量值 -

ALTER TABLE table1 AUTO_INCREMENT = 19;

【讨论】:

感谢大家!做到了。【参考方案2】:

试试这个

ALTER TABLE A AUTO_INCREMENT=19;

【讨论】:

【参考方案3】:

更改表TableA AUTO_INCREMENT=19;

【讨论】:

以上是关于如何让mysql从前一行值开始自动递增的主要内容,如果未能解决你的问题,请参考以下文章

如何让mysql的自动递增的字段重新从1开始

如何让mysql的自动递增的字段重新从1开始

MySQL自动递增自定义值

如何让 Laravel Migration 中的 ID 自动递增从某个数字开始

MySQL 自动递增自定义值

如何将具有自动递增值的列添加到 mySql 数据库的表中?