mybatis oracle两种方式批量插入数据
注意insert,一定要添加: useGeneratedKeys="false" ,否者会报错。
<insert id="addBatch" parameterType="java.util.List">
BEGIN
<foreach collection="list" item="item" index="index" separator="">
insert into blacklist
(id, userid, deviceid, createdate, updatedate, "LEVEL")
VALUES
(
USER_INFO_SEQ.NEXTVAL,#{item.userId,jdbcType=INTEGER},#{item.deviceId,jdbcType=VARCHAR},
#{item.createDate,jdbcType=DATE},sysdate, #{item.level,jdbcType=INTEGER} );
</foreach>
COMMIT;
END;
</insert>
<insert id="addBatch" parameterType="java.util.List">
INSERT INTO INFO (
PARTNERSERIALNUM,
MEMBERTYPE,
PARTNERMEMBERID,
REGMOBILE,
CONTACTSMOBILE,
"NAME",
)
<foreach collection="list" item="item" index="index" separator="union all" >
select #{item.partnerSerialNum,jdbcType=VARCHAR}, #{item.memberType,jdbcType=VARCHAR}, #{item.partnerMemberId,jdbcType=VARCHAR}, #{item.regMobile,jdbcType=VARCHAR}, #{item.contactsMobile,jdbcType=VARCHAR}, #{item.name,jdbcType=VARCHAR}
} from dual
</foreach>
</insert>
上面转载id为phantomes的文章
下面放一个看了这个改好自己的代码的例子:用户授权。