项目场景:
提示:这里简述项目相关背景:
采集数据,对于重复的数据执行saveAndUpdate,如果存在则更新,不存在则插入
执行语句如下:
@Query(nativeQuery = true,value = "insert into reading_stat (instrument_no,channel_id,day,hour,value,type) values (:instrumentNo,:channelId,:day,:hour,:value,:type ) on duplicate key update value = :value ")
此时一切正常,这里的key需要是表建立一个唯一索引
问题描述
提示:这里描述项目中遇到的问题:
新需求需要更新两个字段,value和reviewStatus
so,我的语句变成了:
@Query(nativeQuery = true,value = "insert into reading_stat (instrument_no,channel_id,day,hour,value,type,review_status) values (:instrumentNo,:channelId,:day,:hour,:value,:type,:reviewStatus ) on duplicate key update value = :value and review_status = :reviewStatus ")
这完全是第一感觉写出来的,然后就报错了
解决方案:
提示:这里填写该问题的具体解决方案:
没啥分析的,就是sql语句写错了,update更新多个值之间是用逗号连接