例如,如果我有一个自动编号字段,我添加新记录而不指定此字段,让数据库引擎为我选择它.
那么,它会选择已删除记录的数量吗?如果是,何时?
// SQL Server,MySQL.//
后续问题:当数据库引擎耗尽数字用于主键时会发生什么?
没有.数字主键不会被重用,除非你手动指定它们(你应该真的避免这种情况!)
AFAIK,这可能发生在MySQL:
AUTO_INCREMENT处理如何在InnoDB中工作:
只要服务器运行,InnoDB就会使用内存中的自动增量计数器.当服务器停止并重新启动时,InnoDB会重新初始化每个表的计数器,以便第一次INSERT到表中,如前所述.
重启服务器后.Innodb重用以前生成的auto_increment值. :
建议修复:innodb表在重启后不应丢失auto_increment列的下一个数字的轨迹.