一张自增表里面总共有 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。

相关推荐
丁丁点灯o44 分钟前
Oracle日期时间函数说明及与MySql区别说明
数据库·mysql·oracle
qq_157852071 小时前
Oracle 查找连续日期连续小时
数据库·sql·mysql
lovix121 小时前
MySQL高级篇(二):深入理解数据库事务与MySQL锁机制
数据库·mysql
和麻1 小时前
sqlserver迁移日志文件和数据文件
数据库
StarRocks_labs6 小时前
StarRocks Community Monthly Newsletter (Jun)
数据库·starrocks·数据湖·物化视图·存算分离
光电的一只菜鸡7 小时前
ubuntu之坑(十五)——设备树
linux·数据库·ubuntu
ob熔天使——武8 小时前
MySQL
数据库·mysql
小光学长8 小时前
基于vue框架的防疫物资仓库管理系统09y38(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库
野生技术架构师12 小时前
MySQL数据实时同步到Elasticsearch的高效解决方案
数据库·mysql·elasticsearch
白仑色12 小时前
Oracle 高可用性与安全性
数据库·oracle·数据安全·goldengate·高可用架构