Mybatis批量更新数据

         Mybatis批量更新数据                     

第一种方式

  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

  1. <update id="batchUpdate"  parameterType="java.util.List">  
  2.         
  3.           <foreach collection="list" item="item" index="index" open="" close="" separator=";">  
  4.                 update test   
  5.                 <set>  
  6.                   test=${item.test}+1  
  7.                 </set>  
  8.                 where id = ${item.id}  
  9.          </foreach>  
  10.             
  11.     </update>  


这种方式,可以一次执行多条SQL语句

摘录自:http://blog.csdn.net/tolcf/article/details/39213217

原文地址:https://www.cnblogs.com/haimishasha/p/5697740.html