原创

mybatis批量插入数据使用ignore关键字忽略重复数据/唯一索引

<!-- 批量插入数据 -->
<insert id="insertUsersByBatch" parameterType="java.util.List">
insert ignore into xxxtable (
    userId,
    userName,
    sex
)
    values
    <foreach collection="list" item="item" index="index"
 separator=",">
(
    #{item.userId},#{item.userName},#{item.sex}
)
    </foreach>
</insert>

此表中,userId为唯一索引,批量插入数据时,使用ignore关键字,监测唯一索引,自动跳过重复数据,插入未重复数据。不使用ignore关键字时,则会抛出违反唯一索引异常。

注:执行批量执行操作时,数据库连接地址上需要加&allowMultiQueries=true,表示可以支持批量操作

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

~阅读全文~人机检测~

关注下方微信公众号“Java精选”(w_z90110),回复关键词领取资料:如Mysql、Hadoop、Dubbo、Spring Boot等,免费领取视频教程、资料文档和项目源码。

Java精选专注程序员推送一些Java开发知识,包括基础知识、各大流行框架(Mybatis、Spring、Spring Boot等)、大数据技术(Storm、Hadoop、MapReduce、Spark等)、数据库(Mysql、Oracle、NoSQL等)、算法与数据结构、面试专题、面试技巧经验、职业规划以及优质开源项目等。其中一部分由小编总结整理,另一部分来源于网络上优质资源,希望对大家的学习和工作有所帮助。

评论

分享:

支付宝

微信