php - 数据库在插入数据时,自动递增的主键`id`,没有按顺序递增
为情所困
为情所困 2017-05-16 13:13:37
[PHP讨论组]

id=1 name=...
id=2
id=6
在删除之前插入的id为3,4,5的记录后再插入为什么不是3,而是到6了

为情所困
为情所困

全部回复(2)
为情所困

你用命令看看,就知道为什么了.

show create table test2;

自增值不会随你删除记录而减少.

 test2 | CREATE TABLE `test2` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `mouth` int(11) NOT NULL,
  `num` int(11) NOT NULL,
  PRIMARY KEY (`id`,`mouth`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=gbk

要修改自增值请用sql来修改

 alter table test2 auto_increment=4;

修改后的主键自增起始点.

  test2 | CREATE TABLE `test2` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `mouth` int(11) NOT NULL,
  `num` int(11) NOT NULL,
  PRIMARY KEY (`id`,`mouth`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=gbk |
大家讲道理

你可以参考一下这里的 mysql自增,如果你想要那个 id 继续从3开始就要手动 INSERT INTO (id,字段2,字段2) VALUES ('3',值1,值2)

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号