一张自增表里面总共有 7 条数据,删除了最后 2 条数据,重启 mysql 数据库,又插入了一条数据,此时 id 是几?
让我们再次通过步骤来解答这个问题。
假设你的表是一个自增表,并且表中原本有7条数据,id从1递增到7。
-
删除最后2条数据:
当你执行删除操作,比如DELETE FROM my_table WHERE id IN (6, 7);
,表中剩下的数据id将是1到5。但是,MySQL的自增计数器(AUTO_INCREMENT值)不会自动减少。在删除这两条记录之前,最后插入的记录的id是7,因此自增计数器的下一个值将是8。 -
重启MySQL数据库:
重启MySQL数据库不会重置AUTO_INCREMENT值。自增计数器保持为上一次操作结束时的值,即8。 -
插入一条新数据:
当你插入一条新记录时,MySQL将使用当前的AUTO_INCREMENT值(8)作为新记录的id,并将自增计数器增加到9,为下一次插入做准备。
因此,在删除最后两条数据、重启MySQL数据库并插入一条新数据之后,新插入的数据的id将是8。
总结:在这种情况下,插入新数据后的id是8。