在MySQL中删除后自动递增
我有一个带有主键字段且具有AUTO_INCREMENT的MySQL表。在阅读了这里的其他文章后,我发现人们遇到了同样的问题,答案也各不相同。有些人建议不要使用此功能,其他人则说它不能被“修复”。
我有:
table: coursefields: courseID, courseName
示例:表中的记录数:18.如果我删除记录16、17和18-我希望输入的下一条记录的courseID为16,但是由于最后输入的courseID为18,所以它将为19。
我的SQL知识不是很出色,但是是否可以通过查询(或phpMyAdmin界面中的设置)刷新或更新此计数?
该表将与数据库中的其他表相关。
鉴于所有建议,我决定忽略此“问题”。我将简单地删除和添加记录,同时让自动增量完成它的工作。我猜数字到底有多大无关紧要,因为它仅用作唯一标识符,并且没有(如上所述)
业务 含义。
对于那些可能对我的原始帖子感到困惑的人:我不想使用此字段来知道我有多少条记录。我只是希望数据库看起来整洁,并具有更多的一致性。
回答:
您尝试做的事情听起来很危险,因为这不是预期的用途AUTO_INCREMENT
。
如果您真的想找到最低的未使用密钥值,请不要使用AUTO_INCREMENT
,并手动管理密钥。但是,这不是推荐的做法。
退后一步,问“ 为什么需要回收键值? ”未签名INT
(或BIGINT
)是否没有提供足够大的键空间?
18,446,744,073,709,551,615
在应用程序的整个生命周期中,您是否真的会拥有比唯一记录更多的记录?
以上是 在MySQL中删除后自动递增 的全部内容, 来源链接: utcz.com/qa/424211.html