oracle的批量插入方案
在mybatis对应的xml中输入类似下面的sql
// 插入的sql语句示例
<insert id="insertCardRefundList" parameterType="java.util.List" useGeneratedKeys="false" >
insert into card_refund
(id,card_id,order_id,user_name,user_account,refund_status,bundle_id,create_time,update_time,refund_fee)
<foreach collection="list" item="item" index="index" separator="union all">
(select
#{item.id},
#{item.cardId},
#{item.OrderId},
#{item.userName},
#{item.userAccount},
#{item.refundStatus},
#{item.BundleId},
#{item.createTime},
#{item.updateTime},
#{item.refundFee}
from dual)
</foreach>
</insert>
需要注意的点:
1.useGeneratedKeys=“false”,这个必须等于false
2.里面要注意的是:插入的数据,要加上(selec … from dual)是一定要有括号的
3.重要的事separator的值不应该是",",而应该是union all
4.from dual 前面是不带逗号的,切记。