重复密钥更新MySQL不更新

我在一个表中有两个唯一键。 我从csv文件插入数据。 唯一键是: enrollmentNosubjectCode

我的查询是:

Insert into result_stud_det(enrollmentNo,departmentCode,subjectCode,semester,marks,enrSubjCode) values (?,?,?,?,?,?) "
                    + "ON DUPLICATE KEY UPDATE previousMarks=marks, marks=?;

数据更新时出现问题。 最后更新的“标记”保持不变。 将csv文件中的第一个数据复制到每个具有唯一登记号的其他列和任何subjectCodes。 这是因为它只是在寻找唯一的“注册否”密钥。 我需要做什么以便最新的商标“标记”在更新后不具有相同的值?


我怀疑你的问题与这个问题有关:多重UNIQUE字段的ON DUPLICATE KEY UPDATE的MySQL行为

从接受的答案:

如果其中一个 UNIQUE字段等于要插入的值,则执行UPDATE ON DUPLICATE KEY UPDATE

这听起来像你期待你的陈述行为,就好像你有一个单一的复合唯一键,而不是两个单独的唯一键。

链接地址: http://www.djcxy.com/p/66761.html

上一篇: Duplicate key update MySQL not updating

下一篇: Sql update: continue updating after duplicate key error (transact