无法从存储引擎读取自动增量值,错误号:1467

Meh*_*lal 8 mysql

在mysql中插入数据时出现此错误:

错误号:1467无法从存储引擎读取自动增量值

我现在不怎么解决这个问题请任何帮助将不胜感激.

Meh*_*lal 9

经过一番搜索,我找到了答案,它解决了我的问题.

运行这个SQL查询它将解决问题

 ALTER TABLE `YOUR_TABLE`  AUTO_INCREMENT =1
Run Code Online (Sandbox Code Playgroud)

  • 这是一个糟糕的方法.现有行怎么样?考虑更改@ spencer7593建议的数据类型. (4认同)

小智 6

给kiddingmu的回答加一点评论:这不仅仅是位数的问题,也是数据类型范围的问题。如果列是 INT(11),则 11 表示使用 11 位数字进行显示;但这并没有解除INT只能编码范围 -2147483648:2147483647(有符号时)和 0:4294967295(无符号时)的限制。

所以:对于 INT(11) 列,10000000000 的 AUTO_INCREMENT 将起作用;90000000000 的 AUTO_INCREMENT 不会,尽管它是 11 位数字。

如果需要更大的范围,则应使用另一种类型,例如BIGINT


小智 5

我也收到了此消息。我的问题是我的表未按索引排序。尝试使用以下内容:

ALTER TABLE  `YOUR-TABLE` ORDER BY  `index` ;
Run Code Online (Sandbox Code Playgroud)