mybatis批量插入數據


<!-- 批量插入數據 -->
    <insert id="insertxxxByBatch" parameterType="java.util.List">
        insert ignore into xxxtable (
            xxx_id,
            yyy_id,
            version
        )
        values
        <foreach collection="list" item="item" index="index"
                 separator=",">
            (
            #{item.xxxId},#{item.yyyId},#{item.version}
            )
        </foreach>
    </insert>

此表中,xxx_id為唯一索引,批量插入數據時,使用ignore關鍵字,監測唯一索引,自動跳過重復數據,插入未重復數據。

不使用ignore關鍵字時,則會拋出違反唯一索引異常。

另:執行批量執行操作時,數據庫連接地址上需要加&allowMultiQueries=true,表示可以支持批量操作

例:jdbc:mysql://ip:port/dataresource?useUnicode=true&characterEncoding=utf8&useSSL=false&allowMultiQueries=true


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM