标签: autoincrement

MySQL自动增量字段自行重置

我们有一个 MySQL 表,它有一个自动递增字段设置为 INT (11)。该表几乎存储了在应用程序中运行的作业列表。在应用程序生命周期中的任何给定时刻,该表很可能包含数千个条目或完全为空(即一切都已完成)。

该字段不是其他任何东西的外键。

自动增量似乎随机将自身重置为零,尽管我们实际上从未能够捕获重置。

问题变得很明显,因为我们看到自动增量字段增加到 600,000 条左右的记录,然后一段时间后自动增量字段似乎在低 1000 条记录中运行。

如果表为空,几乎就像自动增量会自行重置一样。

这可能吗?如果可能,我该如何关闭它或更改它的重置方式?

如果不是,有没有人解释它为什么会这样做?

谢谢!

mysql autoincrement

15
推荐指数
1
解决办法
2万
查看次数

如何强制 MySQL 将 0 作为有效的自动递增值

长话短说,我有一个 SQL 文件,我想将其作为skel样式文件导入,因此这将以编程方式重复执行。我可以随心所欲地编辑 SQL 文件,但我不想接触应用程序本身。

此应用程序用于userid = 0表示匿名用户。它在数据库中还有一个相关的(空白)条目来表示这个“用户”。因此,我的行skel.sql看起来像这样:

INSERT INTO `{{TABLE_PREFIX}}users` VALUES (0, '', '', '', 0, 0, 0, '', '', 0, 0, 0, 0, 0, NULL, '', '', '', NULL);
Run Code Online (Sandbox Code Playgroud)

问题在于这uid是一个auto_increment字段,从技术上讲,它0是一个无效值。或者至少,如果您将其设置为 0,您基本上是在告诉 MySQL,“请在此字段中插入下一个 id”。

现在,我想我可以把一个INSERT那么UPDATE查询到我的SQL文件,但有没有告诉MySQL的一般,是的,其实我是想以插入的方式0进入这个领域?

mysql autoincrement

5
推荐指数
1
解决办法
9243
查看次数

标签 统计

autoincrement ×2

mysql ×2