文档章节

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

I
 IsLearning
发布于 2017/04/07 14:00
字数 184
阅读 115
收藏 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
宝山
程序员
SPring整合Mybatis配置--Mysql批量更新坑

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

胖猫警长
07/11
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
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

没有更多内容

加载失败,请刷新页面

加载更多

创建第一个react项目

sudo npm i -g create-react-app@1.5.2 create-react-app react-app cd react-apprm -rf package-lock.jsonrm -rf node_modules #主要是为了避免报错npm installnpm start......

lilugirl
今天
1
0
在浏览器中进行深度学习:TensorFlow.js (八)生成对抗网络 (GAN)

Generative Adversarial Network 是深度学习中非常有趣的一种方法。GAN最早源自Ian Goodfellow的这篇论文。LeCun对GAN给出了极高的评价: “There are many interesting recent development...

naughty
今天
0
0
搬瓦工镜像站bwh1.net被DNS污染,国内打不开搬瓦工官网

今天下午(2018年10月17日),继搬瓦工主域名bandwagonhost.com被污染后,这个国内的镜像地址bwh1.net也被墙了。那么目前应该怎么访问搬瓦工官网呢? 消息来源:搬瓦工优惠网->搬瓦工镜像站b...

flyzy2005
今天
3
0
SpringBoot自动配置

本篇介绍下,如何通过springboot的自动配置,将公司项目内的依赖jar,不需要扫描路径,依赖jar的情况下,就能将jar内配置了@configuration注解的类,创建到IOC里面 介绍下开发环境 JDK版本1.8 spr...

贺小五
今天
5
0
命令行新建Maven多项目

参考地址 # DgroupId 可以理解为包名# DartifactId 可以理解为项目名mvn archetype:generate -DgroupId=cn.modfun -DartifactId=scaffold -DarchetypeArtifactId=maven-archetype-quickst......

阿白
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部