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 (?, ?) , (?, ?)
直接成循环了,网上找了不少,都说是这样配置的,不知道是不是少配置了什么东西~~~~~~
搞定了,其实很简单,我发的是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>
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。