一张自增表里面总共有 7 条数据,删除了最后 2 条数据,重启 mysql 数据库,又插入了一条数据,此时 id 是几?

让我们再次通过步骤来解答这个问题。

假设你的表是一个自增表,并且表中原本有7条数据,id从1递增到7。

  1. 删除最后2条数据

    当你执行删除操作,比如 DELETE FROM my_table WHERE id IN (6, 7);,表中剩下的数据id将是1到5。但是,MySQL的自增计数器(AUTO_INCREMENT值)不会自动减少。在删除这两条记录之前,最后插入的记录的id是7,因此自增计数器的下一个值将是8。

  2. 重启MySQL数据库

    重启MySQL数据库不会重置AUTO_INCREMENT值。自增计数器保持为上一次操作结束时的值,即8。

  3. 插入一条新数据

    当你插入一条新记录时,MySQL将使用当前的AUTO_INCREMENT值(8)作为新记录的id,并将自增计数器增加到9,为下一次插入做准备。

因此,在删除最后两条数据、重启MySQL数据库并插入一条新数据之后,新插入的数据的id将是8。

总结:在这种情况下,插入新数据后的id是8。

相关推荐
小冷coding4 小时前
【MySQL】MySQL 插入一条数据的完整流程(InnoDB 引擎)
数据库·mysql
鲨莎分不晴5 小时前
Redis 基本指令与命令详解
数据库·redis·缓存
专注echarts研发20年5 小时前
工业级 Qt 业务窗体标杆实现・ResearchForm 类深度解析
数据库·qt·系统架构
周杰伦的稻香8 小时前
MySQL中常见的慢查询与优化
android·数据库·mysql
冉冰学姐8 小时前
SSM学生社团管理系统jcjyw(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·学生社团管理系统·多角色管理
nvd118 小时前
深入分析:Pytest异步测试中的数据库会话事件循环问题
数据库·pytest
appearappear9 小时前
如何安全批量更新数据库某个字段
数据库
·云扬·9 小时前
MySQL 常见存储引擎详解及面试高频考点
数据库·mysql·面试
羊小猪~~10 小时前
【QT】--文件操作
前端·数据库·c++·后端·qt·qt6.3
coding-fun10 小时前
电子发票批量提取导出合并助手
大数据·数据库