溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

mybatis的批量更新方法

發(fā)布時(shí)間:2021-07-06 10:23:41 來(lái)源:億速云 閱讀:161 作者:chen 欄目:大數(shù)據(jù)

這篇文章主要講解了“mybatis的批量更新方法”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“mybatis的批量更新方法”吧!

問(wèn)題

想要使用Mybatis的xml映射文件中的sql批量更新對(duì)象。

思路

主要使用SQL中的CASE語(yǔ)法,例如如下SQL:

UPDATE course
    SET name = CASE
        WHEN id=1 THEN 'name1'
        WHEN id=2 THEN 'name2'
        WHEN id=3 THEN 'name3'
    END,
    title = CASE
        WHEN id=1 THEN 'New Title 1'
        WHEN id=2 THEN 'New Title 2'
        WHEN id=3 THEN 'New Title 3'
    END
WHERE id = 1 or id = 2 or id = 3

mapper

<update id="updateList" parameterType="list">
    UPDATE course
    <trim prefix="SET" suffixOverrides=",">
        <trim prefix="name = CASE" suffix="END,">
            <foreach collection="list" item="item" index="index">
                <if test="item.name!=null">
                    WHEN id=#{item.id} THEN #{item.name}
                </if>
            </foreach>
        </trim>
        <trim prefix="title = CASE" suffix="END,">
            <foreach collection="list" item="item" index="index">
                <if test="item.title!=null">
                    WHEN id=#{item.id} THEN #{item.title}
                </if>
            </foreach>
        </trim>
    </trim>
    WHERE
    <foreach collection="list" separator="or" item="item" index="index"> 
        id=#{item.id}
    </foreach>
</update>

感謝各位的閱讀,以上就是“mybatis的批量更新方法”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)mybatis的批量更新方法這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI