mybatis

博客展示了数据库批量操作的代码示例,包括批量创建和批量修改。批量创建使用 insert 语句结合 foreach 标签插入多条记录;批量修改使用 update 语句,通过 case when 结合 foreach 标签更新多条记录的字段值。

批量创建
<insert id="insertBatch">
        <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">
          SELECT LAST_INSERT_ID()
        </selectKey>
        insert into shopee_item (item_id, item_seller)
    <foreach collection="records" item="record" separator=",">
        (#{record.itemId,jdbcType=VARCHAR}, #{record.itemSeller,jdbcType=VARCHAR})
     </foreach>
</insert>


批量修改

<update id="updateBatch" parameterType="java.util.List">
            update shopee_item
            <trim prefix="set" suffixOverrides=",">
                <trim prefix="item_status =case" suffix="end,">
                     <foreach collection="list" item="item" index="index">
                         when id=#{item.id} then #{item.itemStatus}
                     </foreach>
                </trim>
                
                <trim prefix="name =case" suffix="end,">
                     <foreach collection="list" item="item" index="index">
                         when id=#{item.id} then <![CDATA[#{item.name}]]>
                     </foreach>
                </trim>
                 where id in
            <foreach collection="list" index="index" item="item" separator="," open="(" close=")">
                #{item.id,jdbcType=BIGINT}
            </foreach>
    </update>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值