Mybatis 有则更新,无则插入的实现
Posted earlybridvic
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis 有则更新,无则插入的实现相关的知识,希望对你有一定的参考价值。
想插入数据库一条记录,如果这条记录的主键或者Unique键已存在,则更新这条记录,如果主键或Unique键不存在,则新增这条记录。用Mybatis实现。网上有些方法说用replace into,但是mybatis是不支持的。所以,必须使用ON DUPLICATE KEY UPDATE。
<insert id="insertUser" useGeneratedKeys="true" keyProperty="id" keyColumn="id" parameterType="com.foreigners.entity.User"> insert INTO t_user(openId, name, gender, phoneNumber) VALUES (#{openId},#{name},#{gender},#{phoneNumber}) ON DUPLICATE KEY UPDATE name = #{name}, gender = #{gender}, phoneNumber = #{phoneNumber} </insert>
这段代码里,openId是Unique键。
以上是关于Mybatis 有则更新,无则插入的实现的主要内容,如果未能解决你的问题,请参考以下文章