oracle mybatis multi insert
insert all 구문 안에 시퀀스 조회 구문이 문법에러가 나서 함수로 변경 후 함수 호출
-- 시퀀스 조회 함수 생성
CREATE OR REPLACE FUNCTION FN_GET_SEQ( SEQ_NAME IN VARCHAR2 )
RETURN
NUMBER
IS
V_NUM NUMBER;
SQL_STMT VARCHAR2(64);
BEGIN
SQL_STMT := 'select ' || SEQ_NAME || '.nextval from dual';
EXECUTE IMMEDIATE SQL_STMT INTO V_NUM;
RETURN V_NUM;
END;
-- mybatis 구문
INSERT ALL
< foreach collection="excelDataList" item="item" >
INTO T_GOODS_IMAGE_UPLOAD (
IDX, GROUPIDX, FILENAME, STYCD, COLCD, TYPE, SORT, MAINYN, ADMINNO
) VALUES
(FN_GET_SEQ('GOODS_IMAGE_UPLOAD_SEQ'), #{item.groupIdx}, #{item.fileName}, #{item.stycd}, #{item.colcd}, #{item.type}, #{item.sort}, #{item.mainYn}, #{item.adminNo})
< /foreach >
SELECT * FROM DUAL
** foreach 문법 맞출것 **