1. 程式人生 > >mybatis批量更新兩種方式:1.修改值全部一樣 2.修改每條記錄值不一樣

mybatis批量更新兩種方式:1.修改值全部一樣 2.修改每條記錄值不一樣

nic mis str link eba encoding type 配置 tails

Mybatis批量更新數據

mybatis批量更新兩種方式:1.修改值全部一樣 2.修改每條記錄值不一樣

mybatis批量更新兩種方式:1.修改值全部一樣 2.修改每條記錄值不一樣

mybatis批量更新兩種方式:1.修改值全部一樣 2.修改每條記錄值不一樣

第一種方式

[html] view plain copy print?
  1. <update id="updateBatch" parameterType="Map">
  2. update aa set
  3. a=#{fptm},
  4. b=#{csoftrain}
  5. where c in
  6. <foreach collection="cs" index="index" item="item" open="("separator=","close=")">
  7. #{item}
  8. </foreach>
  9. </update>


但是這種方式修改的字段值都是一樣的。

第二種方式

修改數據庫連接配置:&allowMultiQueries=true

比如:jdbc:mysql://192.168.1.236:3306/test?useUnicode=true&amp;characterEncoding=UTF-8&allowMultiQueries=true

[html] view plain copy print?
  1. <update id="batchUpdate" parameterType="java.util.List">
  2. <foreach collection="list" item="item" index="index" open="" close="" separator=";">
  3. update test
  4. <set>
  5. test=${item.test}+1
  6. </set>
  7. where id = ${item.id}
  8. </foreach>
  9. </update>


這種方式,可以一次執行多條SQL語句

本文轉自http://www.cnblogs.com/haimishasha/p/5697740.html

mybatis批量更新兩種方式:1.修改值全部一樣 2.修改每條記錄值不一樣