MyBatisPlus联合主键批量更新
方式一注解方式
@MppMultiId
updateByMultiId
方式二条件构造器 Wrapper
update(updateWrapper),一条一条更
方式三case when
<update id="updatePutInAndRealNum" parameterType="java.util.List" >update batch_material<trim prefix="set" suffixOverrides=","><trim prefix="real_num =case" suffix="end,"><foreach collection="list" item="i" index="index"><if test="i.realNum!=null">when material_code=#{i.materialCode} and batch_id = #{i.batchId} then #{i.realNum}</if></foreach></trim><trim prefix="put_in =case" suffix="end,"><foreach collection="list" item="i" index="index"><if test="i.putIn!=null">when material_code=#{i.materialCode} and batch_id = #{i.batchId} then #{i.putIn}</if></foreach></trim></trim>where<foreach collection="list" separator="or" item="i" index="index" >material_code=#{i.materialCode} and batch_id = #{i.batchId}</foreach></update>
数据量不多10条以内吧。大批量慎用,每一个case when 都要循环一遍list集合
拼接sql
update batch_material set real_num =case when material_code=? and batch_id = ? then ? when material_code=? and batch_id = ? then ? end, put_in =case when material_code=? and batch_id = ? then ? when material_code=? and batch_id = ? then ? end where material_code=? and batch_id = ? or material_code=? and batch_id = ?
MyBatisPlus联合主键批量更新相关推荐
- mysql 8.20联合主键批量更新案例,存在即更新,不存在插入
结合官网案例一下是插入案例 insert into f_test(equipment_id,dtu_id,run_date,status,start_time,end_time,duration, u ...
- mybatis-plus联合主键的使用
1.依赖mybatis-plus <dependency> <groupId>com.github.jeffreyning</groupId> &l ...
- mysql处理打卡外勤主键,联合主键约束更新不了数据
create table ts_2020_emp_grant as select * from ts_clock_emp_grant; ---查询大于1条-- select * from ts_clo ...
- mybatis-plus/mybatis的组件们——拦截器、字段填充器、类型处理器、表名替换、SqlInjector(联合主键处理)
最近有个练手的小例子,大概就是配置两个数据源,从一个数据源读取数据写到另一个数据源,虽然最后做了出来,但是不支持事务...就当是对mybatis-plus/mybatis组件使用方式的记录吧,本次例子 ...
- 解决Mybatis-Plus的联合主键问题
场景:使用com.baomidou.mybatis-plus进行批量新增或更新操作时,发现后台日志只根据一个主键进行更新,实体类将两个主键都加上@TableId时,运行报错. 解决:引入了com.gi ...
- JPA规范:一对多、一对一、多对多的双向关联与级联操作以及JPA联合主键
通常在企业开发中,开发Dao层有两种做法: (1)先建表,后再根据表来编写配置文件和实体bean.使用这种方案的开发人员受到了传统数据库建模的影响. (2)先编写配置文件和实体bean,然后再生成 ...
- 删除unique key,删除原有的联合主键,新建新的联合逐渐,删除索引,修改索引,mysql5.7修改索引名称,查看最大连接数量,查看是否有ssl
mySQL中删除unique key的语法 ,假设有表: CREATE TABLE `good_booked` ( `auto_id` int(10) NOT NULL auto_incremen ...
- hibernate 联合主键 merge
http://topic.csdn.net/u/20090722/16/1946dd91-3900-47e9-ab85-ed7db41252de.html Object obj=session.mer ...
- mysql 尽量不要使用 联合主键_MySQL 使用规范
MySQL 使用规范 以下规范适用在线交易(OLTP)系统的数据库.数据仓库与分析系统也可以参考. 命名规范 表名.字段名.索引名使用小写字母.数字,采用下划线分割 表名采用模块名3个缩小字符_前缀, ...
最新文章
- 用javascript实现的纵版飞行射击游戏—《天机》
- 函数式编程语言python-Python函数式编程
- (仿头条APP项目)3.二级页面首页的ViewPager页面切换
- pycharm中如何调用Anoconda的库
- redis 版的 hello world
- 工作307:uni-富文本的实现逻辑跳转
- c3等待加载样式 vue_Vue.js__简易加载等待动画
- 【Oracle】11g外部表指定oracle_datapump引擎,不能使用preprocessor预处理子句。
- 乒乓球单循环赛_乒乓球循环赛制比赛规则
- win10无法执行vbs脚本
- 论文笔记——分布式深度学习框架下基于性能感知的DBS—SGD算法
- JS05-页面的打断点(检验程序的执行步骤)
- AOP应用(Transactions 事务)
- 计算机毕业设计JAVA企业售后服务管理系统mybatis+源码+调试部署+系统+数据库+lw
- 资深电竞发烧友走心盘点,五款高续航游戏低延迟蓝牙耳机分享
- 阿里张建锋:互联网主要解决三大问题
- 12306的自动化登录
- LED驱动电源不足,都有哪些原因
- DWM缩略图,但是使用的是IDCompositionVisual
- 跨境电商erp系统是什么?
热门文章
- 飞信-文档-开发者-API文档
- nlp中的词向量对比:word2vec/glove/fastText/elmo/GPT/bert
- linux配置添加组播mac地址,如何实现端口静态添加组播MAC地址
- mysql查询相关语法总结
- UVA 1659 Help Little Laura 帮助小劳拉 (最小费用流,最小循环流)
- free命令详解(转载)
- java反射原理三种,java反射的原理、作用
- Vue—FindIndex的使用
- 企业寻求并购股权转让过程中,这些问题其实可以避免
- SSRF服务端请求伪造