mybatis实现批量添加、修改和删除操作

在开发过程中,我们经常会对某个数据库表进行批量增删改的操作,批量的好处在于它可以减少对数据库的访问次数,减轻数据的库压力,同时也会提高项目的性能,这里我只贴sql语句的批量增删改
批量添加
<insert id="batchInsert">
    insert into user(name,age,password,hobby) values
    <foreach collection="list" item="user" separator=",">
     (#{user.name},
      #{user.age},
      #{user.password},
      #{user.hobby})
    </foreach>
  </insert>
批量修改
<update id="batchUpdate">
    <foreach collection="list" item="user" separator=";" open="" close="">
      update user
      <set >
        <trim suffixOverrides=",">
        <if test="user.name != null" >
          name= #{user.name},
        </if>
        <if test="user.age != null" >
          age= #{user.age},
        </if>
        <if test="user.password!= null" >
          password= #{user.password},
        </if>
        <if test="user.hobby}!= null" >
          hobby= #{user.hobby}},
        </if>
        </trim>
      </set>
      where id= #{user.id}
    </foreach>
  </update>

批量修改值得注意的地方是
在配置文件中需要在数据库链接地址后面加上&allowMultiQueries=true
否则运行报错

批量删除
 <delete id="batchDelete">
        delete from user where id in
        <foreach collection="list" item="ids" separator="," open="(" close=")">
            #{ids}
        </foreach>
    </delete>
  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值