相关疑难解决方法(0)

在MySQL中删除后自动递增

我有一个MySQL表,主键字段打开AUTO_INCREMENT.在阅读了这里的其他帖子之后,我注意到有相同问题并且答案各不相同的人.有人建议不要使用此功能,其他人说它不能"修复".

我有:

table: course
fields: courseID, courseName
Run Code Online (Sandbox Code Playgroud)

示例:表中的记录数:18.如果我删除记录16,17和18 - 我希望输入的下一条记录的课程ID为16,但是它将是19,因为最后输入的课程ID是18.

我的SQL知识并不令人惊讶,但无论如何使用查询(或phpMyAdmin界面中的设置)刷新或更新此计数?

该表将与数据库中的其他表相关.


鉴于所有的建议,我决定忽略这个'问题'.我将简单地删除并添加记录,同时让自动增量完成它的工作.我想这个数字到底是什么并不重要,因为它只被用作唯一标识符,并且没有(如上所述)商业含义.

对于那些我可能与我的原帖混淆的人:我不想用这个字段来知道我有多少记录.我只是希望数据库看起来整洁,并且具有更多的一致性.

mysql sql primary-key auto-increment

64
推荐指数
4
解决办法
14万
查看次数

如何处理MySQL中自动增量ID列的碎片

我有一个带有auto_increment字段的表,有时会删除行,因此auto_increment会留下空白.有没有办法避免这种情况,或者如果没有,至少,如何编写一个SQL查询:

  1. auto_increment值更改为最大值(当前值)+ 1
  2. 返回新auto_increment值?

我知道如何编写第1部分和第2部分,但是我可以将它们放在同一个查询中吗?

如果那是不可能的:

如何"选择"(返回)auto_increment值或auto_increment值+ 1?

mysql auto-increment

4
推荐指数
1
解决办法
1963
查看次数

标签 统计

auto-increment ×2

mysql ×2

primary-key ×1

sql ×1