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

相关推荐
点云SLAM6 小时前
BOOS库中Graph模块boost::edge_reverse_t和boost::vertex_color_t解读
数据库·edge·图论·bfs·dfs/拓扑排序·boost库、
尽兴-6 小时前
《深入剖析:全面理解 MySQL 的架构设计》
数据库·mysql·数据库架构设计·理解mysql架构
在风中的意志7 小时前
[数据库SQL] [leetcode] 2388. 将表中的空值更改为前一个值
数据库·sql·leetcode
梦幻通灵7 小时前
Mysql字段判空实用技巧
android·数据库·mysql
酸菜牛肉汤面8 小时前
23、varchar与char的区别
数据库
To Be Clean Coder8 小时前
【Spring源码】getBean源码实战(三)
java·mysql·spring
AI题库9 小时前
PostgreSQL 18 从新手到大师:实战指南 - 2.5 Serverless PostgreSQL
数据库·postgresql·serverless
IT技术分享社区9 小时前
数据库实战:MySQL多表更新JOIN操作的底层原理与性能调优指南
数据库·mysql·程序员
廋到被风吹走9 小时前
【数据库】【Oracle】分区表与大表设计
数据库·oracle
UrSpecial9 小时前
InnoDB存储引擎
数据库·mysql