ash*_*shu 23 mysql database auto-increment
我有一个id字段的mysql表作为自动增量.
当我向表中插入值时出现错误
1467 - 无法从存储引擎读取自动增量值
同时show table status向我展示了具有自动增量的字段
18446744073709551615 作为Auto_increment值.
什么问题可以帮助我......?
Ale*_*kov 26
我有同样的错误但在我的情况下我在表中有大约1.5k的记录.我通过重置AUTO INCREMEN来修复它:
ALTER TABLE `table_name` AUTO_INCREMENT = 1
Run Code Online (Sandbox Code Playgroud)
Mar*_*rco 16
问题绝对可能是:将18446744073709551615转换为十六进制,你会发现
$ FFFF-FFFF-FFFF-FFFF.
如果您的字段是未签名的64位,则达到其限制.
Mik*_*ike 16
我在运行插入语句几周后开始收到此错误:
Duplicate entry '127' for key 'PRIMARY'
Run Code Online (Sandbox Code Playgroud)
...即使我的桌子设置为自动增量.我进去并将auto_increment值从127更改为128然后我开始收到此错误:
1467 - Failed to read auto-increment value from storage engine
Run Code Online (Sandbox Code Playgroud)
我最终发现该表最初是使用tinyint列创建的,因为ID不是标准的int ...所以基本上它无法理解大于127的数字.我将列类型切换为正确的整数,这解决了问题.
希望有人帮助:)
实际上,您可以简单地更改列以删除其auto_increament属性并auto_increment再次将其设置为.就我而言,这种方式确实有效.
| 归档时间: |
|
| 查看次数: |
46972 次 |
| 最近记录: |