mybatis-plus批量更新是几条sql?

保存的话使用

saveBatch

猜测应该是生成这样一条.

insert into user (id, name) values
    (200,'haha' ),
    (201,'haha2'),
    (202,'haha3');

既保证了io次数只有一次,也保证了sql语句执行一条.感觉性能还不错.

那我有一个问题,我更新操作的时候,我循环更新.

和使用

saveOrUpdateBatch

除了io变成一次之外,sql语句上有什么区别?

他也会生成一条update语句么?

但是用一条update语句,我手写sql也不知道怎么写啊.

请高人指点.

PS:mysql数据库.

mybatis plus的批量更新用的是batchexecutor!这玩意是将多个sql写入到一个事务提交的!

mybatis-plus 是每条记录都是一个单独的 sql,你看源码就知道了