java - mybatis mysql 如何實現(xiàn)upsert功能?
問題描述
1、數(shù)據(jù)不存在insert;2、數(shù)據(jù)存在update;3、表中有一個唯一約束;并根據(jù)該約束執(zhí)行具體的插入或者修改操作。
————————————————————————————
insert into T_name (uid, app_id,createTime,modifyTime) values(111, 1000000,’2017-03-07 10:19:12’,’2017-03-07 10:19:12’) on duplicate key update uid=111, app_id=1000000, createTime=’2017-03-07 10:19:12’,modifyTime=’2017-05-07 10:19:12’
如何把上邊的sql,用mybatis改寫?
問題解答
回答1:<insert parameterType='Model'> insert into T_name(uid, name, age, balance) values (100,'yangyang', 23, 100000000) on duplicate key update balance=balance + 100</insert>
以上代碼,自己測試可以的。
回答2:<insert parameterType='Model'>
insert into T_name (uid, name, age, balance) values (#{uid,jdbcType=VARCHAR},#{name}, 23, 100000000)on duplicate key update balance=balance + 100
</insert>
my mybatis 中 使用#{} 獲取vo屬性值
相關(guān)文章:
1. 關(guān)docker hub上有些鏡像的tag被標(biāo)記““This image has vulnerabilities””2. docker - 如何修改運行中容器的配置3. Docker for Mac 創(chuàng)建的dnsmasq容器連不上/不工作的問題4. docker鏡像push報錯5. 前端 - @media query 使用出現(xiàn)的問題?6. 利用IPMI遠程安裝centos報錯!7. 運行python程序時出現(xiàn)“應(yīng)用程序發(fā)生異?!钡膬?nèi)存錯誤?8. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個是怎么回事????9. phpstudy8.1沒集成mysql-front10. html - css氣泡,實現(xiàn)“倒三角(不知道算不算三角了)”可透明的。

網(wǎng)公網(wǎng)安備