美文网首页
Mybatis 批量新增时报错解决方法

Mybatis 批量新增时报错解决方法

作者: Captain小布丁 | 来源:发表于2018-11-15 15:28 被阅读0次

    1.检查语法是否有错

    2.在不添加数据库连接参数配置参数下,使用以下批量插入语句可正常执行:

    <insert id="insertXXX" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id">

    insert into t_table (column1,column2) values 

    <foreach collection="list" item="item" index="index" separator="," >

    <trim prefix="(" suffix=")" suffixOverrides=",">

    #{item.column1},#{item.column2},

    </trim>

    </foreach>

    </insert>

    但若采用以下方式,需在数据库连接中加入allowMultiQueries=true!

    <insert id="insertXXX" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id">

      <foreach collection="list" item="item" index="index" separator=";" >

        insert into base_schedule

    <trim prefix="(" suffix=")" suffixOverrides=",">

          <if test="item.column1!= null">

            column1,

          </if>

          <if test="item.column2!= null">

            column2,

          </if>

        <trim prefix="values (" suffix=")" suffixOverrides=",">

          <if test="item.column1!= null">

            #{item.column1}

         </if>

         <if test="item.column2!= null">

            #{item.column2},

          </if>

        </foreach>

    </insert>

    相关文章

      网友评论

          本文标题:Mybatis 批量新增时报错解决方法

          本文链接:https://www.haomeiwen.com/subject/izyyfqtx.html