MyBatis批量插入|更新数据(MySql)

1、批量插入

<insert id ="insertBatch" parameterType="java.util.List" >
  insert into tableName
  values
  <foreach collection ="list" item="item" index= "index" separator =",">
   (
       #{item.name},
       #{item.logo}
    )            
  </foreach >
</insert>

2、批量更新

<update id="updateBatch" parameterType="java.util.List">
  update tableName
  set
  name = 
  <foreach collection="list" item="item" index="index" separator=" ">
    case id when #{item.id} then #{item.name} end
  </foreach> ,
  logo = 
  <foreach collection="list" item="item" index="index" separator=" ">
    case id when #{item.id} then #{item.logo } end
  </foreach> 
  where id in
  <foreach collection="list" item="item" index="index" separator="," open="(" close=")">
       #{item.id}
  </foreach>

3、MyBatis Integer类型更新写法

正确:
<if test="name!= null">name= #{name},</if>
错误:
<if test="name != null and name != '' ">name= #{name},</if>
原因:Integer类型为空时默认为0,  0!=''

参考文献:
https://www.cnblogs.com/Jason-Xiang/p/6558334.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. 简介 1.1 什么是 MyBatis ? MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的...
    笨鸟慢飞阅读 11,167评论 0 4
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,005评论 25 709
  • 七年之前 就在角落听过你的话语 甚至是回音 荡旋在教室里 丝丝窃语 那时我不愿说 你愿意和谁一起 你有长发 也从未...
    草木风沙阅读 1,616评论 0 2
  • “师傅,走么?” 许愿一身黑色短袖,顶着一把巨大的黑色雨伞,站在车旁边,半边儿的裤子还是湿透了。他心想,这师傅,真...
    Elizen阅读 3,462评论 0 2
  • 今日打开朋友圈,在拜读吾师新作《写给谋儿的家书》后,心潮澎湃、泪眼朦胧,感慨父辈对晚辈的那种浓浓的父爱,父爱如山,...
    布衣姚阅读 4,037评论 0 0

友情链接更多精彩内容