自动增量已自动重置回 1

2024-03-25

我刚刚遇到了一个我无法解决的问题。

我有一个数据库表project_queues它用作队列,我在其中存储一些记录。处理记录后,它们将被删除。 删除是由 Rails 构造调用的record.destroy在触发的循环中DELETE record FROM table在MySql数据库上。

但现在我注意到,在表中project_queues the 自动递增 Id(主键)被设置回1。 (这损坏了我在审计表中的引用。相同的记录现在指向多个不同的项目队列)

show create table project_queues;

CREATE TABLE `project_queues` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
   ...
   ...
  `created_at` datetime NOT NULL,
  `updated_at` datetime NOT NULL,
  PRIMARY KEY (`id`),
) ENGINE=InnoDB AUTO_INCREMENT=1 

我不使用TRUNCATE project_queues或者删除表结构并在代码中再次创建它。

有人像我一样遇到过类似的问题吗?我在日志中也找不到任何异常。

我在用着轨道 5.2.3, 玛丽亚数据库 10.1.

从应用程序到数据库的连接强制执行以下 SQL 模式:

  • NO_AUTO_VALUE_ON_ZERO
  • STRICT_ALL_TABLES
  • NO_AUTO_CREATE_USER
  • NO_ENGINE_SUBSTITUTION
  • NO_ZERO_DATE
  • NO_ZERO_IN_DATE
  • ERROR_FOR_DIVISION_BY_ZERO

但我不认为这些和AI有什么关系。


Auto_increment 可以通过更新重置。由于您将其用作队列,我想您不会进行更新,但值得一问。

另外,你使用什么表实现,MyIsam,InnoDB,其他......?

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

自动增量已自动重置回 1 的相关文章

  • 如何修复 AJAX 在选中复选框时始终触发?

    有时这个 AJAX 会触发 有时不会 让我解释一下 habit js document ready function habit check change function habit this parent siblings habit
  • 通过“SELECT”命令选择每组的前两条记录的最佳方法是什么?

    例如我有下表 id group data 1 1 aaa 2 1 aaa 3 2 aaa 4 2 aaa 5 2 aaa 6 3 aaa 7 3 aaa 8 3 aaa 通过 SELECT 命令选择每组的前两条记录的最佳方法是什么 如果没有
  • 为什么 .each 在我的 Rails 视图中完成后会重复数组? [复制]

    这个问题在这里已经有答案了 在我的 Rails 视图页面中 我有以下循环 它应该循环遍历我的 tag list 数组并打印每个标签 由于某种原因 它在打印每个单独的标签后会重复该数组 例如 这个数组有两个元素 ruby python 每个方
  • 使用 SQLite 创建列表树

    我正在尝试使用 PHP 和 SQLite 表设置创建一个分层列表 如下所示 itemid parentid name 1 null Item1 2 null Item2 3 1 Item3 4 1 Item4 5 2 Item5
  • SQL:使用相等的键和最近的键进行连接(类似于 Pandas 的合并)

    例如 我有2个这样的表 对于表 1 中的每一行 我想获取该行 same customer id and nearest date 就我而言 table2 date lt table1 date 结果应该是这样的 我怎样才能在 SQL 中做到
  • Rails_admin 中的范围作为过滤器

    我在我的应用程序中使用rails admin 我的模型上有一些范围 以下是一个示例 class User lt ActiveRecord Base scope unconfirmed where confirmed at IS NULL e
  • varchar(20) 和 varchar(50) 相同吗?

    我看到评论 如果 varchar 20 列中有 5000 万个 10 到 15 个字符之间的值 而 varchar 50 列中有同样的 5000 万个值 它们将占用完全相同的空间 这就是重点varchar 而不是 char 有人可以告诉我原
  • 如何按值降序对哈希进行排序并在 ruby​​ 中输出哈希?

    output sort by k v v reverse 和钥匙 h a gt 1 c gt 3 b gt 2 d gt 4 gt a gt 1 c gt 3 b gt 2 d gt 4 Hash h sort 现在我有这两个 但我试图按值
  • Rails 3 沙箱控制台

    在 Rails 2 中你可以运行 script console sandbox 这样您就可以使用生产数据而不会意外破坏任何东西 我似乎找不到 Rails 3 的等效命令 有人知道它是什么吗 很简单 输入 bundle exec rails
  • 编写多个mysql脚本

    是否可以在复合脚本中包含其他 mysql 脚本 理想情况下 我不想为包含的脚本创建存储过程 对于较大的项目 我想分层维护几个较小的脚本 然后根据需要组合它们 但现在 我很乐意学习如何包含其他脚本 source是一个内置命令 您可以在 MyS
  • 遏制gem安装:捆绑安装失败,但正常gem安装有效[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions solve
  • SQL,帮助进行有关用户年龄的小查询

    我有一个包含注册用户的表 其中我将年份保存为 varchar 值 只是因为我只花了一年 我想创建包含年龄的饼图 以显示哪些用户更有可能注册 下面的查询给出了表中出现超过 5 次的用户年龄计数 以避免结果过小 虽然这些小结果低于 having
  • Oracle中如何转义单引号? [复制]

    这个问题在这里已经有答案了 我有一列包含某些存储为文本字符串的表达式 其中包括单个引号 例如 错过的交易 包括引号 发生这种情况时如何使用 where 子句 select from table where reason missed tra
  • SQL 解析键值字符串

    我有一个像这样的逗号分隔字符串 key1 value1 key2 value2 key3 value3 key1 value1 1 key2 value2 1 key3 value3 1 我想将它解析成一个如下所示的表 Key1 Key2
  • 想要从字符格式转换为带小数的数字格式

    想要将字符格式 00001000000 转换为10000 00 请帮我 我已经尝试过 select to number 00012300 9999999999 99 nls numeric characters from dual 这个脚本
  • 仅适用于安全页面的安全回形针 URL

    我正在尝试找到使回形针网址安全的最佳方法 但仅限于安全页面 例如 显示存储在 S3 中的图像的主页是http mydomain com http mydomain com图像网址是http s3 amazonaws com mydomain
  • 使用外部硬盘写入和存储 mysql 数据库

    我已经设置了 mysql 数据库在我的 Mac 上使用 java 和 eclipse 运行 它运行得很好 但现在我将生成大约 43 亿行数据 这将占用大约 64GB 的数据 我存储了大量的密钥和加密值 我有一个 1TB 外部我想用作存储位置
  • OVER ORDER BY 中的多个列

    有没有办法在 OVER ORDER BY 子句中指定多个列 SELECT ROW NUMBER OVER ORDER BY A Col1 AS ID FROM MyTable A 上面的方法工作正常 但尝试添加第二列不起作用 SELECT
  • 尝试在本地主机上测试我的 php 文件,但只出现一个空白页面,没有错误消息

    我正在运行 Apache 和 mySQL 因为我检查了所有日志 似乎没有任何错误 我的目标是每当有新的表单条目时就向特定地址发送电子邮件 我对后端和 PHP 缺乏经验 所以我不太确定哪里出了问题 任何帮助将不胜感激
  • Escape String - 在 Javascript 中输出rails字符串[重复]

    这个问题在这里已经有答案了 我正在尝试将字符串值分配给 erb 文件中的 javascript 对象 如下所示 var data name 问题是 如果name is Tom s small ears 的输出data name将会Tom x

随机推荐