MyBatis ORCL批量添加
主键用序列
<insert id="insertMeetHistoryList" parameterType="java.util.List" useGeneratedKeys="false">
INSERT INTO YJ_MEET_HISTORY(ID, TIME_BEGIN, TIME_END, DURATION, MEETING_ID, CALL_NUMBER, DISPLAY_NAME,IF_PULL_VIDEO)
SELECT SYS_GUID(),s.* FROM
<foreach collection="meetHistories" open="(" separator="UNION ALL" close=") s" item="item">
SELECT
#{item.timeBegin},
#{item.timeEnd},
#{item.duration},
#{item.meetingId},
#{item.callNumber},
#{item.displayName},
0
FROM DUAL
</foreach>
</insert>
主键自定义
<insert id="batchInsert" useGeneratedKeys="false">
INSERT INTO
YJ_MEET_HISTORY_VIDEO
(VOD_ID,
DISPLAY_NAME,
START_TIME,
END_TIME,
FILE_SIZE,
MEETING_ROOM_NUMBER,
NEMO_NUMBER,
VOD_METADATA_TYPE,
MEETING_ID,
MEET_HISTORY_ID)
<foreach collection="meetHistoryVideos" item="item" separator="UNION ALL" >
(SELECT
#{item.vodId,jdbcType=VARCHAR},
#{item.displayName,jdbcType=VARCHAR},
#{item.startTime,jdbcType=NUMERIC},
#{item.endTime,jdbcType=NUMERIC},
#{item.fileSize,jdbcType=NUMERIC},
#{item.meetingRoomNumber,jdbcType=VARCHAR},
#{item.nemoNumber,jdbcType=VARCHAR},
#{item.vodMetadataType,jdbcType=VARCHAR},
#{meetingId},
#{meetHistoryId}
FROM DUAL)
</foreach>
</insert>