Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1413|回复: 2
打印 上一主题 下一主题

MyBatis批量插入数据---批量更新的坑

[复制链接]

697

主题

1142

帖子

4086

积分

认证用户组

Rank: 5Rank: 5

积分
4086
跳转到指定楼层
楼主
发表于 2017-9-25 16:27:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 java 于 2018-5-3 15:17 编辑

http://www.cnblogs.com/admol/articles/4248159.html
  1.     <insert id ="insertCodeBatchSql" parameterType="map" >
  2.         <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">
  3.             SELECT LAST_INSERT_ID()
  4.         </selectKey>
  5.         insert into v_out_redeem_code(provider_id, member_type_id, code, code_password,status,expire_time, create_time)
  6.         values
  7.         <foreach collection ="list" item="reddemCode" index= "index" separator =",">
  8.             (
  9.             #{reddemCode.providerId}, #{reddemCode.memberTypeId},
  10.             #{reddemCode.code},
  11.             #{reddemCode.codePassword},
  12.             #{reddemCode.status}, #{reddemCode.expireTime},#{reddemCode.createTime}
  13.             )
  14.         </foreach >
  15.     </insert >
复制代码
回复

使用道具 举报

697

主题

1142

帖子

4086

积分

认证用户组

Rank: 5Rank: 5

积分
4086
沙发
 楼主| 发表于 2017-10-19 12:58:02 | 只看该作者
本帖最后由 java 于 2018-5-3 15:18 编辑

批量更新

修改数据库连接配置:&allowMultiQueries=true
比如:jdbc:mysql://192.168.1.236:3306/test?useUnicode=true&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>  
复制代码

https://blog.csdn.net/u011277123/article/details/54374833

回复 支持 反对

使用道具 举报

697

主题

1142

帖子

4086

积分

认证用户组

Rank: 5Rank: 5

积分
4086
板凳
 楼主| 发表于 2018-5-3 15:19:37 | 只看该作者
case when实现批量更新


MySQL没有提供直接的方法来实现批量更新,但可以使用case when语法来实现这个功能。
https://www.cnblogs.com/exmyth/p/5757137.html
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|firemail ( 粤ICP备15085507号-1 )

GMT+8, 2024-5-8 06:24 , Processed in 0.055604 second(s), 18 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表