Mybatis批量更新数据
Mybatis批量更新数据
第一种方式
- <update id="updateBatch" parameterType="Map">
- update aa set
- a=#{fptm},
- b=#{csoftrain}
- where c in
- <foreach collection="cs" index="index" item="item" open="("separator=","close=")">
- #{item}
- </foreach>
- </update>
但是这种方式修改的字段值都是一样的。
第二种方式
修改数据库连接配置:&allowMultiQueries=true
比如:jdbc:mysql://192.168.1.236:3306/test?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true
- <update id="batchUpdate" parameterType="java.util.List">
- <foreach collection="list" item="item" index="index" open="" close="" separator=";">
- update test
- <set>
- test=${item.test}+1
- </set>
- where id = ${item.id}
- </foreach>
- </update>
这种方式,可以一次执行多条SQL语句