开发者社区> 问答> 正文

mybatis批量插入出错,求解???? 400 报错

mybatis批量插入出错,求解???? 400 报错 配置文件如下:
<insert id="insertBatch" parameterType="java.util.List">
insert into VIS_CUST_SCENIC
(   id,
    name)
 values
 <foreach collection="orderList" item="order" index="index"  
                  separator=", ">
    (#{order.id,jdbcType=VARCHAR},
#{order.name,jdbcType=VARCHAR})
</foreach>
</insert>


但是错误信息提示sql语句出错:

insert into order    (   id,        name)    values             (?,    ?)    ,         (?,    ?)

直接成循环了,网上找了不少,都说是这样配置的,不知道是不是少配置了什么东西~~~~~~

展开
收起
爱吃鱼的程序员 2020-06-03 14:51:32 405 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    搞定了,其实很简单,我发的是mysql上可以用的,oracle是不行的

    <insert id="insertBatch" parameterType="java.util.List">
    insert into VIS_CUST_SCENIC
    (   id,
        name)
    --这里去掉values
     <foreach collection="orderList" item="order" index="index"  
                      separator="union all ">
         (#{order.id,jdbcType=VARCHAR},
    #{order.name,jdbcType=VARCHAR})
    </foreach>

    </insert>


    ######

    上面还是错的

    <insert id="insertBatch" parameterType="java.util.List"> 
    insert into VIS_CUST_SCENIC 
    (   id, 
        name) 
    --这里去掉values 
     <foreach collection="orderList" item="order" index="index"   
                      separator="union all "> 
         (select #{order.id,jdbcType=VARCHAR}, 
    #{order.name,jdbcType=VARCHAR} from dual) 
    </foreach> 

    </insert>

    2020-06-03 17:13:57
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Java Spring Boot开发实战系列课程【第6讲】:Spring Boot 2.0实战MyBatis与优化(Java面试题) 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载

相关实验场景

更多