MySQL删除后自动递增

2024-01-12

我有一个 MySQL 表,其主键字段启用了 AUTO_INCRMENT。 阅读这里的其他帖子后,我注意到人们有同样的问题并且有不同的答案。有些人建议不要使用此功能,另一些人则表示它无法“修复”。

I have:

table: course
fields: courseID, courseName

示例:表中的记录数:18。如果我删除记录 16、17 和 18 - 我预计输入的下一条记录的 courseID 为 16,但它将是 19,因为最后输入的 courseID 是 18。

我的 SQL 知识并不令人惊奇,但是有没有办法通过查询(或 phpMyAdmin 界面中的设置)刷新或更新此计数?

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


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

对于那些我可能对我的原始帖子感到困惑的人:我不想使用此字段来知道我有多少记录。我只是希望数据库看起来整洁并且具有更多的一致性。


你试图做的事情听起来很危险,因为这不是它的预期用途AUTO_INCREMENT.

如果您确实想找到最低的未使用键值,请不要使用AUTO_INCREMENT根本没有,并手动管理您的密钥。然而,这不是推荐的做法。

退一步问“为什么需要回收键值?" 做无符号INT (or BIGINT)没有提供足够大的密钥空间?

你真的会拥有更多吗?18,446,744,073,709,551,615 http://dev.mysql.com/doc/refman/5.0/en/numeric-type-attributes.html在应用程序的生命周期中是否有独特的记录?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL删除后自动递增 的相关文章

  • 更新 SQLAlchemy 中的特定行

    我将 SQLAlchemy 与 python 一起使用 我想更新表中等于此查询的特定行 UPDATE User SET name user WHERE id 3 我通过 sql alchemy 编写了这段代码 但它不起作用 session
  • 有没有办法在 MySQL 中有效地对 TRUNCATE 或 DROP TABLE 进行 GRANT ?

    我最近在 MySQL 5 5 x 中尝试过 GRANT SELECT INSERT UPDATE DELETE TRUNCATE ON crawler TO my user localhost WITH GRANT OPTION 这会导致错
  • 每行中非空列的计数

    我有一个包含 4 列的表 在第 5 列中我想存储前 4 列中有多少个非空列的计数 例如 其中 X 是任意值 Column1 Column2 Column3 Column4 Count X X NULL X 3 NULL NULL X X 2
  • MySQL 最佳实践:SELECT 子递归尽可能提高性能?

    我想选择一个根项目及其子项 使其性能尽可能高 我更喜欢使用嵌套集模型 但这次表结构遵循邻接模型 有关嵌套集和邻接模型的更多信息 http mikehillyer com articles managing hierarchical data
  • 从 json 数组获取值并执行 sql 插入

    这是我的数组 json 1 Device ID a9a3346be4375a92 Date 2012 05 31 Time 15 22 59 Latitude 51 4972912 Longitude 0 1108178 2 Device
  • Postgresql 的 SQL_NO_CACHE?

    MySQL 关键字是否有等效的 postgresqlSQL NO CACHE 或 SQL Serverdbcc drop clean buffers 即您可以简单地将其包含在 SQL 语句中或作为脚本的一部分吗 UPDATE 这个问题 查看
  • SQL 按计数排序

    如果我有一个表和这样的数据 ID Name Group 1 Apple A 2 Boy A 3 Cat B 4 Dog C 5 Elep C 6 Fish C 我希望根据 Group 的总和从小到大进行排序 例如 A 2条记录 B 1条记录
  • 在shell命令行中创建mysql触发器

    我需要在命令行中创建一个mysql触发器 这个sql在mysql控制台中运行良好 sql USE DB1 DROP TRIGGER IF EXISTS my trigger DELIMITER CREATE TRIGGER my trigg
  • 如何从 MySQL 中的布尔类型返回不同的字符串?

    如果我在 MySql 中将一列设置为布尔值 则查询将返回以下值 0 or 1 是否可以做这样的事情 SELECT bool value AS yes OR no 我的意思是 根据真假返回两个不同的字符串 SELECT CASE WHEN b
  • 手动更改postgresql中查询的执行计划?

    是否可以在postgresql中手动更改执行计划的操作顺序 例如 如果我总是想在过滤之前进行排序操作 尽管这在 postgresql 的正常使用中没有意义 是否可以通过例如手动强制执行该操作改变运营的内部成本 如果我实现自己的功能呢 是否可
  • MySQL:“您的 SQL 语法错误...靠近键...”? [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我发现了一个非常酷的用于丢失密码的脚本 但是这一行给我带来了问题 r mysql query INSERT INTO keys u
  • SQL Server 批量插入 - “批量加载数据转换错误”

    bulk insert dbo A FROM d AData csv WITH FIELDTERMINATOR ROWTERMINATOR n 将批量数据插入数据库时 在检查可疑数据后 我遇到了无法解释的错误 消息 4867 16 级 状态
  • 合并两个具有相同列名称的 MYSQL 表

    我有两张桌子 表一是计划时间 id edition time 1 1 9 23am 2 2 10 23am 表二为实际时间 id edition time 1 1 10 23am 2 2 11 23am 我想要的结果是 Caption Ed
  • 如何编写可以补偿拼写错误数据的 MySQL 搜索?

    有没有什么方法可以编写一个 MySQL 搜索来弥补用户在拼写等方面的错误 作为随机示例 有人可能会输入 电子邮件受保护 cdn cgi l email protection代替 电子邮件受保护 cdn cgi l email protect
  • 删除重复的行并需要在mysql中保留所有行中的一个[重复]

    这个问题在这里已经有答案了 我想删除基于两列的重复行 但需要保留所有行 1 行 重复行可以多于两行 例如 ID NAME PHONE 1 NIL 1234 2 NIL 1234 3 NIL 1234 4 MES 5989 我想从上面 3 行
  • 如何将 sql 数据输出到 QCalendarWidget

    我希望能够在日历小部件上突出显示 SQL 数据库中的一天 就像启动程序时突出显示当前日期一样 在我的示例中 它是红色突出显示 我想要发生的是 当用户按下突出显示的日期时 数据库中日期旁边的文本将显示在日历下方的标签上 这是我使用 QT De
  • Magento 设置脚本中的 ALTER TABLE 不使用 SQL

    乔纳森 戴 https stackoverflow com users 336905 jonathan day says 更新不应采用以下形式 SQL命令 我没遇到过 任何 DDL 或 DML 语句不能 通过 Magento 的配置执行 结
  • 创建日期范围表

    我正在编写一份需要显示每天值的报告 我有查询的开始日期和结束日期 但我希望避免丢失日期 以防表不包含特定日期的值 我正在考虑创建一个基本日期范围表 其中包含开始和结束之间的所有日期 然后将其与数据表左连接以显示每一天的值 我找到了一些适用于
  • 最近邻居的 Postgis SQL

    我正在尝试计算最近的邻居 为此 我需要传递一个参数来限制与邻居的最大距离 例如 半径1000米内最近的邻居是哪些 我做了以下事情 我用数据创建了表 id name latitude longitude 之后 我执行了以下查询 SELECT
  • 使用 md5 加密的 PHP 和 Mysql 查询出现问题

    我使用普通的 php mysql 插入查询并使用 md5 加密密码 这是插入查询 sql mysql query INSERT INTO user username password role approved values usernam

随机推荐

  • Cassandra 要求允许过滤,即使列是聚集键

    对 Cassandra 非常陌生 如果问题很简单 我们深表歉意 我创建了一个表 create table ApiLog LogId uuid DateCreated timestamp ClientIpAddress varchar pri
  • 强制多个线程在多个 CPU 可用时使用它们

    我正在编写一个 Java 程序 由于其工作性质 该程序使用大量 CPU 然而 其中很多可以并行运行 并且我已经使我的程序成为多线程的 当我运行它时 它似乎只使用一个 CPU 直到它需要更多的 CPU 然后才使用另一个 CPU 我可以在 Ja
  • 无法中断 global.asax / Application_Start

    我在第一行有一个断点Application Start 但 Visual Studio 不会中断它 Visual Studio 已将自身附加到 IIS 工作进程 自动附加到计算机 SRD00510 上的进程 2092 w3wp exe 已成
  • Mysql XML表导出命令行

    也许我在这里没有看到什么 但是为什么这个命令行在 LINUX 命令行上运行时工作得很好并提供结果集 但在 WINDOWS 命令 行上执行时它会失败并没有返回任何内容 mysql hHOSTNAME uroot p xml e SELECT
  • Python:连接多个组件来构建 URL

    我正在尝试通过加入一些动态组件来构建 URL 我想用类似的东西os path join 但对于我来说的 URL 来说 通过研究我发现urlparse urljoin 做同样的事情 然而 看起来一次只需要两个参数 到目前为止 我有以下有效但看
  • 学习卡布奇诺

    学习卡布奇诺的最佳来源是什么 我从事 传统 网络开发 但我对这个新框架非常感兴趣 请注意 我对 Objective C 毫无了解 如上所述 该网站是一个好地方 但还有一些其他好的资源 http cappuccinocasts com htt
  • 尽管环境变量设置正确,但 Android Studio 中“未找到 SDK 位置”

    我有点困惑为什么在实际设置 ANDROID HOME 环境变量时收到此消息 It is also set in project defaults 我可能在这里遗漏了一些微不足道的东西 但不确定是什么 谢谢 面临着同样的问题Intellij
  • BigQuery:通过 Java API 进行流式插入时出现错误 500

    我正在尝试使用以下示例代码插入一行 https developers google com bigquery streaming data into bigquery streaminginsertexamples https develo
  • 如何访问 Silverlight 4 中 App.xaml.cs 中创建的自定义属性

    我在 app xaml cs 文件中创建了自己的自定义属性 我需要在我的视图模型之一中访问此属性 当我尝试通过应用程序对象访问时 它不会显示 谁能帮我这个 Regards Use Application Current访问您创建的自定义属性
  • 如果大数组包含较小数组中的值,则查找大数组的索引

    有没有快的numpy用于返回较大数组中的索引列表的函数 其中它与较小数组中的值相匹配 较小的数组约为 30M 值 较大的数组为 800M 所以我想避免 for 循环numpy where calls searchsorted 的问题是 即使
  • 如何使用 numpy 创建单位矩阵

    我如何创建一个身份matrix与numpy 有没有比以下更简单的语法 numpy matrix numpy identity n 这是一个更简单的语法 np matlib identity n 这是一个更简单的语法 运行速度更快 In 1
  • MySQL 中出现 ERROR 1701、ERROR 1452 和 ERROR 1305 错误 - 需要一些专业知识

    这是我第一次真正尝试用第三范式创建数据库 我成功地创建了 DDL 脚本 在继续构建脚本之前 我已将逻辑模型验证为 3NF 但我遇到了很多错误 我不确定是否可以修复 对于这个特殊的情况 我可能已经咬了一口 但我不想放弃 这对我来说是一个很大的
  • 如何在 Create React App 中不显示警告

    我正在使用 Facebook 的 create react app 当它通过 npm start 启动时 它会向我显示警告列表 例如 Bla 已定义但从未使用预期为 但看到了 我不想看到任何这些警告 有办法抑制它们吗 对于本地 Eslint
  • 如何在不使用子进程的情况下从 python 自动脚本中运行 python 'sdist' 命令?

    我正在编写一个脚本来自动打包 自制 python 模块并将其分发到远程计算机上 我正在使用 Pip 并创建了一个 setup py 文件 但随后我必须调用子进程模块来调用 python setup py sdist 命令 我已经查看了 di
  • 如何向 .net 控制台应用程序添加字体颜色?

    有没有办法为 net 中的控制台应用程序中的某些行的字体着色 Thanks Console BackgroundColor ConsoleColor Blue Console ForegroundColor ConsoleColor Yel
  • 如何在 d3 方法链中有效地将数据从字符串转换为 int?

    我正在 d3 中制作交互式条形图 并且遇到了问题 条形图从表单读取数据 但它以字符串形式读取数据 当我使用数据来绘制这样的条形时 var bars svg selectAll rect data dataset enter append r
  • 使用已安装的 openresty 安装resty.http

    我安装了 openresty 1 13 6 1 但它缺少 resty http 模块 我的 openresty 安装在 usr local openresty 中 我需要将 Resty http 模块与其集成 怎么做 只需复制两个文件 ht
  • MVC 5:我应该从 IdentityUser 类继承我的 User 吗?

    我试图学习 Asp Net Identity 和 在这个tutorial http blogs msdn com b webdev archive 2013 10 20 building a simple todo application
  • Haskell 中的“模式匹配”类型

    我想要一个功能f作为增量Ints 并作为所有其他类型的标识 我尝试启用TypeApplications扩展并以最直接的方式执行此操作 f forall a a gt a f Int x x 1 f x x 但扩展不启用此类模式
  • MySQL删除后自动递增

    我有一个 MySQL 表 其主键字段启用了 AUTO INCRMENT 阅读这里的其他帖子后 我注意到人们有同样的问题并且有不同的答案 有些人建议不要使用此功能 另一些人则表示它无法 修复 I have table course field