我试图创建一个新对象并出现此错误:
java.sql.sqlException从存储引擎读取自增值失败
所以我去 phpMyAdmin 那里创建对象,并且出现了相同的结果:
MySQL 说:文档
1467 - Failed to read auto-increment value from storage engine
然后我点击编辑,它就在那里:
INSERT INTO `reservation`.`room` (`idroom`, `number`, `floor`, `description`, `characteristics`, `cost`, `status`, `type`) VALUES (NULL, '114', '3', 'ss', 'ss', '550.00', 'Available', 'ss')
(idroom 应该自动递增。)
我已经读过其他帖子,他们说我必须把这个:
ALTER TABLE `table_name` AUTO_INCREMENT = 1
但我不知道该把它放在哪里。有更好的解决办法吗?
最佳答案
您的INSERT
语句是错误的。由于idroom
是AUTO_INCRMENT
;您不得将其包含在插入命令的列列表中。您的插入语句应如下所示。请注意,我已从插入列列表中删除了 idroom
列,并且不在值列表中传递 NULL
。
INSERT INTO `reservation`.`room` (`number`, `floor`, `description`,
`characteristics`, `cost`, `status`, `type`)
VALUES ('114', '3', 'ss', 'ss', '550.00', 'Available', 'ss')
关于java - #1467 - 无法从存储引擎读取自动增量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27196901/