典型的批量操作需求,insert all … select * from dual为oracle批量插入的标准语句,在这里使用ibatis的iterate实现批量语句的拼接(高版本mybatis可以使用foreach,没进行过测试)。
一下为测试通过的ibatis配置文件的sql:
<insert id="test" parameterClass="map">
insert all
<iterate conjunction=" " property="list">
into table (a, b, c)
values
(f_getseq(#list[].a#), #list[].b#, #list[].c#)
</iterate>
select * from dual
</insert>
这个没有什么难点,亲测没有问题。