mysql 变更自增主键id起始值

account 库 user 表结构

CREATE TABLE `user` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT ID,
  `name` varchar(50) NOT NULL COMMENT 用户名,
  `age` int(11) NOT NULL COMMENT 年龄,
  `create_datetime` datetime NOT NULL COMMENT 创建时间,
  `update_datetime` datetime NOT NULL COMMENT 更新时间,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8

获取自增id字段的下一个值

方法一:

SELECT auto_increment FROM information_schema.tables where table_schema="account" and table_name="user";

得到如下结果:

方法二:

SHOW table STATUS like user

修改自增id字段的初始值

alter table user AUTO_INCREMENT=500

其他 SQL 说明

1 select last_insert_id() from user

在使用 Insert 语句后,紧接着使用 select last_insert_id() 才有效,在没有使用过 Insert 语句的情况下,查询返回的结果为0。

2 select max(id) from user

如果手动删除了最新的数据,使用 max(id)查询的结果是当前剩下数据中最大的记录,而新插入数据则不一定从这个数字开始计数。

参考文档

经验分享 程序员 微信小程序 职场和发展