文档章节

mybatis批量更新(mySQL) 常见问题(一)

I
 IsLearning
发布于 2017/04/07 14:00
字数 184
阅读 110
收藏 0

 

<update id="updateBatch" parameterType="java.util.List">

<foreach collection="list" item="item" index="index" separator=";"

  open="" close="">

  update REGION_CODE set

    CODE=#{item.Code,jdbcType=VARCHAR},

    NAME=#{item.Name,jdbcType=VARCHAR}

    where ID = #{item.id,jdbcType=DECIMAL}

</foreach>

</update>

这样直接报错,因为Mybatis映射文件中的sql语句不允许 ; 符号。按照可行的case when处理方式,Mybatis映射文件书写方式如下:

<update id="updateBatch" parameterType="java.util.List">

  update REGION_CODE set

    CODE=

  <foreach collection="list" item="item" index="index" separator=" " open="case ID" close="end">

      when #{item.id,jdbcType=DECIMAL} then #{item.Code,jdbcType=VARCHAR}

  </foreach>

  ,NAME=

  <foreach collection="list" item="item" index="index" separator=" " open="case ID" close="end">

      when #{item.id,jdbcType=DECIMAL} then #{item.Name,jdbcType=VARCHAR}

  </foreach>

  where ID in

  <foreach collection="list" index="index" item="item" separator="," open="(" close=")">

      #{item.id,jdbcType=DECIMAL}

  </foreach>

</update>

      至此,批量更新功能完成。

本文转载自:http://www.cnblogs.com/hyq0002013/p/6077847.html

共有 人打赏支持
I
粉丝 1
博文 2
码字总数 0
作品 0
宝山
程序员
mysql批量插入以及批量更新

一、mysql批量插入 1.SQL语句: 2.注意事项: 3.案例(使用java和mybatis): java代码: mybatis的xml代码: 二、mysql批量更新 1.SQL语句: 2.注意事项: 3.案例(使用java和mybatis): ...

有钱有爱
2016/10/25
57
0
SPring整合Mybatis配置--Mysql批量更新坑

mybatis 批量更新sql写完运行报错,但是一看sql是正确的; 那么就得考虑下是不是配置上不支持批量更新操作了,mybatis 调用mysql完成批量更新是需要我们去手动设置,打开这个开关的。 true是...

胖猫警长
07/11
0
0
mybatis 批量更新

此前的方案在做批量时使用mybatis提供的batch model,该模式下将推迟所有的update(包括insert和delete)语句直到提交事务或者遇到一次查询语句 上述代码可以看出当使用batch模式时如果sql和...

Mr_Qi
2016/10/28
271
0
Mybatis 通用Crud

前言(说明) 源码地址:https://github.com/LittleNewbie/portal mybatis版本 3.2.6 mybatis crud 较为简陋,请移步至mybatis jpa :https://my.oschina.net/LittleNewbie/blog/895198 实现功能......

LittleNewbie
2016/11/11
929
4
MyBatis学习 之 七、mybatis各种数据库的批量修改

                                MyBatis的update元素的用法与insert元素基本相同,因此本篇不打算重复了。本篇仅记录批量update操作的sql语句,懂得SQL语句...

无信不立
2016/03/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

ES6 Promise

Promise promise是异步编程的一种解决方案 1 什么是异步? 异步模式,每一个任务有一个或多个回调函数(callback),前一个任务结束后,不是执行后一个任务,而是执行回调函数,后一个任务则...

NDweb
17分钟前
0
0
Python百分登顶年度编程语言排行榜

今天 IEEE Spectrum 发布了 2018 年度顶级编程语言排行榜。该榜单可根据流行趋势、职业方向、语言类型等多个标准各自细分生成榜单,也可以综合多个标准进行排列,使用者可以根据自己的需求过...

六库科技
21分钟前
0
0
consul笔记

安装和启动就不说了,很简单。 注册一个服务: http://localhost:8500/v1/agent/service/register put请求,json格式内容如下 { "ID": "userServiceId", //服务id "Name": "userService", //服...

朝如青丝暮成雪
22分钟前
0
0
iOS CollectionView 的那些事

UICollectionView是开发中用的比较多的一个控件,本文记录UICollectionView在开发中常用的方法总结,包括使用UICollectionViewFlowLayout实现Grid布局、添加Header/Footer、自定义layout布局...

aron1992
22分钟前
0
0
linux tar.gz zip 解压缩 压缩命令

http://apps.hi.baidu.com/share/detail/37384818 download ADT link http://dl.google.com/android/ADT-0.9.6.zip download SDK link http://dl.google.com/Android/android-sdk_r11-linux_......

owensliu
24分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部