mybatis replace into用法
阿新 • • 發佈:2019-01-10
<insert id="updateOrInsertClientInfo" useGeneratedKeys="true" keyProperty="BM" parameterType="list" > replace into bm_kh (<include refid="Base_Column_List"/>) VALUES <foreach collection="list" item="it" separator=","> ( #{it.bm},#{it.mc},#{it.jm}, #{it.sjbm},#{it.kjm},#{it.sh}, #{it.dzdh},#{it.jwbz},#{it.yhzh}, #{it.yjdz},#{it.bz},#{it.yskm}, #{it.dqbm},#{it.dqmc},#{it.dqkm}, #{it.sfzjy},#{it.wj},#{it.xfsh}, #{it.xfzfjh} ) </foreach> </insert>
replace into 跟 insert 功能類似,不同點在於:replace into 首先嚐試插入資料到表中, 1. 如果發現表中已經有此行資料(根據主鍵或者唯一索引判斷)則先刪除此行資料,然後插入新的資料。 2. 否則,直接插入新資料。
要注意的是:插入資料的表必須有主鍵或者是唯一索引!否則的話,replace into 會直接插入資料,這將導致表中出現重複的資料。