mybatis 执行批量更新batch update 的方法(oracle,mysql)
mybatis 执行批量更新batch update 的方法(oracle,mysql)
素剑步青尘 发表于7个月前
mybatis 执行批量更新batch update 的方法(oracle,mysql)
  • 发表于 7个月前
  • 阅读 9
  • 收藏 0
  • 点赞 0
  • 评论 0

新睿云服务器60天免费使用,快来体验!>>>   

application.properties中加入分页插件

pagination.paginationFilter=com.hikvision.util.pager.PaginationFilter

 

oracle数据库:

<update id="batchUpdate"  parameterType="java.util.List">
	 
	   <foreach collection="list" item="item" index="index" open="begin" close="end;" separator=";">
				update test 
				<set>
				  test=${item.test}+1
				</set>
				where id = ${item.id}
	   </foreach>
		 
</update>

 

mysql数据库:

mysql数据库采用一下写法即可执行,但是数据库连接必须配置:&allowMultiQueries=true

例如:jdbc:mysql://192.168.1.236:3306/test?useUnicode=true&amp;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>

mysql 批量插入

Dao类
int batchInsert(List<UserTask> list);  

Mapper.xml
<insert id="batchInsert" parameterType="com.pojo.UserTask">
    replace into lottery_user_task (
   	    id
      , user_id
      , gmt_create
      , gmt_modify
    )
    values
    <foreach collection="list" item="item" index="index"  separator=",">
        (
        #{item.id,jdbcType=INTEGER}, 
      	#{item.userId,jdbcType=BIGINT},  
        now(),
        now()
        )
    </foreach>
  </insert>

 

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 5
博文 28
码字总数 9329
作品 1
×
素剑步青尘
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: