기록
PL/SQL 대량 INSERT 하기 / 다중 insert 쿼리 본문
/*
--PL/SQL
--대전에 빨리 가려면? 뻐스타
packpage
user function
stored procedure 저장 프로시저
trigger
anonymous block 익명의 블록
*/
BEGIN
FOR I IN 701..900 LOOP
INSERT INTO LPROD(LPROD_ID, LPROD_GU, LPROD_NM)
VALUES(I,'P'||TRIM(TO_CHAR(I,'000')),'쵼이'||I);
END LOOP;
COMMIT;
END;
/
--32로 032로..
SELECT 'P'||TRIM(TO_CHAR(32,'000')) FROM SYS.DUAL;
--123을 P1234으로...
--200행을 pl/sql을 사용하여 insert해보자
DECLARE
BOOK_ID NUMBER;
BEGIN
SELECT NVL(MAX(BOOK_ID),0)+1 INTO BOOK_ID
FROM BOOK;
FOR I IN BOOK_ID..BOOK_ID+200 LOOP
INSERT INTO BOOK(BOOK_ID,TITLE,CATEGORY,PRICE,INSERT_DATE,CONTENT)
VALUES(I,'쵸니글로리'||I,'드라마',12000,SYSDATE,'내용'||I);
END LOOP;
COMMIT;
END;
INSERT ALL
INTO CAR(CAR_NUM, MNF_NUM, DT, DIST, CUS_NUM)
VALUES('123','AD1232','2022-12-01',3333,'CUS001')
INTO CAR(CAR_NUM, MNF_NUM, DT, DIST, CUS_NUM)
VALUES('333','AC4432','2021-12-01',7777,'CUS001')
SELECT * FROM DUAL;
<update id="createPostcar" parameterType="java.util.List">
<foreach collection="list" item="carVO" open="INSERT ALL" close="SELECT * FROM DUAL" separator=" " >
INTO CAR(CAR_NUM, MNF_NUM, DT, DIST, CUS_NUM)
VALUES (#{carVO.carNum},#{carVO.mnfNum},#{carVO.dt},#{carVO.dist},#{carVO.cusNum})
</foreach>
</update>
'DB' 카테고리의 다른 글
CUS 기본키 생성하기 (쿼리) (0) | 2023.02.06 |
---|---|
DB 테이블 다수리 테이블 짜기 (0) | 2023.02.03 |
특정 컬럼에 "S_" 붙이기 (0) | 2023.01.31 |
DB 오라클 JOIN, ANSI JOIN (0) | 2023.01.31 |
insert all (0) | 2023.01.30 |
Comments