firemail
标题: MyBatis批量插入数据---批量更新的坑 [打印本页]
作者: java 时间: 2017-9-25 16:27
标题: MyBatis批量插入数据---批量更新的坑
本帖最后由 java 于 2018-5-3 15:17 编辑
http://www.cnblogs.com/admol/articles/4248159.html- <insert id ="insertCodeBatchSql" parameterType="map" >
- <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">
- SELECT LAST_INSERT_ID()
- </selectKey>
- insert into v_out_redeem_code(provider_id, member_type_id, code, code_password,status,expire_time, create_time)
- values
- <foreach collection ="list" item="reddemCode" index= "index" separator =",">
- (
- #{reddemCode.providerId}, #{reddemCode.memberTypeId},
- #{reddemCode.code},
- #{reddemCode.codePassword},
- #{reddemCode.status}, #{reddemCode.expireTime},#{reddemCode.createTime}
- )
- </foreach >
- </insert >
复制代码
作者: java 时间: 2017-10-19 12:58
本帖最后由 java 于 2018-5-3 15:18 编辑
批量更新
修改数据库连接配置:&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>
复制代码
https://blog.csdn.net/u011277123/article/details/54374833
作者: java 时间: 2018-5-3 15:19
case when实现批量更新
MySQL没有提供直接的方法来实现批量更新,但可以使用case when语法来实现这个功能。
https://www.cnblogs.com/exmyth/p/5757137.html
欢迎光临 firemail (http://firemail.wang:8088/) |
Powered by Discuz! X3 |