最近对MySQL 8进行了升级。在我们的数据库表中,有一列具有唯一性约束。现在,当尝试处理更新查询时,我们会得到
错误代码1062,xxxx_key唯一的重复密钥错误。
准备好的语句大致如下:
UPDATE td_id = ? WHERE td_id = ?
对于某些更改,即使没有实际更改,更新命令也已在过去运行。现在,如果一列具有唯一约束,并且您尝试更新该字段而不进行更改(保持相同的值),则它似乎无法运行。
在尝试在字段上重新启用唯一约束以及手动运行查询以添加唯一约束时,我也遇到了1062。
在8.0更新之前,我们没有遇到此问题。