我正在使用 cfwheels(coldfusion orm 框架)。
我最近将一些数据从以前的主机移到了新主机。现在我正在尝试插入表中,但收到一条错误消息:“执行数据库查询时出错。键 'PRIMARY' 的重复条目 '13651'”
我查看了数据库,似乎已经存在 id 为 13651 的记录。所以我认为问题在于mysql生成正确的自动增量值。
我正在使用 cfwheels(coldfusion orm 框架)。
我最近将一些数据从以前的主机移到了新主机。现在我正在尝试插入表中,但收到一条错误消息:“执行数据库查询时出错。键 'PRIMARY' 的重复条目 '13651'”
我查看了数据库,似乎已经存在 id 为 13651 的记录。所以我认为问题在于mysql生成正确的自动增量值。
看来 Auto_Increment 值已损坏或未设置为该列中的最大值。由于批量插入,这是可能的。
因此,根据解决方案,将最大 PK 值 + 1 设置为新的 AUTO_INCREMENT 值。现在,当您在此表中插入记录时,它们将自动正确选择下一个增量。
ALTER.TABLE tablename AUTO_INCREMENT = value
该记录的其余数据是否与您尝试插入的数据相同?如果您可能只需要告诉 ORM 替换该值?
如果主键开启了自增属性,请勿手动插入。从您的插入查询中删除该主键部分(根据您的 ORM 框架的风格使用什么语法)。