侧边栏壁纸
博主头像
流殃博主等级

用微笑面对生活

  • 累计撰写 176 篇文章
  • 累计创建 43 个标签
  • 累计收到 2 条评论

目 录CONTENT

文章目录

mybatis 批处理使用

流殃
2022-11-08 / 0 评论 / 0 点赞 / 212 阅读 / 221 字 / 正在检测是否收录...

批量插入

<insert id="batchInsert" paramerTyper="pojo" useGeneratedKeys="false">
insert all
<foreach collection="list" item="item">
insert table 1,2,,3 values(item.1,item.2,item.3)
</foreach>
select 1 from dual;
</insert>

批量更新

<insert id="batchUpdate" paramerTyper="pojo">
begin
<foreach collection="list" item="item" index="list" separator=",">
update  table set 1=item.1,i2=tem.2,3=item.3) where contno=#{item.contno}
</foreach>
select 1 from dual;
</insert>

注意

  1. 如果导入数据量过大,需要限制数量,分批进行操作,而不是一次插入或者更新
  2. 如果有主键重复数据提前筛选掉
  3. 如果数据是在有数据的时候更新,无数据的时候插入,需要判断后面的数据不在表中,也不在刚才已经插入的主键中,才可以。
0

评论区