< 반복문 >
1) BASIC LOOP문
LOOP
반복적으로 수행할 구문 ;
*반복문을 빠져나갈 수 있는 구문*
END LOOP;
* 반복문을 빠져나갈 수 있는 구문 (2가지)
1) IF 조건식 THEN EXIT; END IF;
2) EXIT WHEN 조건식;
예시) 1부터 5까지 증가되는 값 출력
DECLARE
I NUMBER := 1;
BEGIN
LOOP
DBMS_OUTPUT.PUT_LINE(I);
I := I+1;
EXIT WHEN I = 6; --IF I = 6 THEN EXIT; END IF;
END LOOP;
END;
/
2) FOR LOOP문
FOR 변수 IN[REVERSE] 초기값.. 최종값
LOOP
반복적으로 실행할 구문;
END LOOP;
BEGIN
FOR I IN REVERSE 1..5
LOOP
DBMS_OUTPUT.PUT_LINE(I);
END LOOP;
END;
/
3) WHILE LOOP문
WHILE 반복문이 수행될 조건
LOOP
반복적으로 실행할 구문;
END LOOP;
DECLARE
I NUMBER := 1;
BEGIN
WHILE I < 6
LOOP
DBMS_OUTPUT.PUT_LINE(I);
I := I + 1;
END LOOP;
END;
(반복문 활용 예시)
1) 게시판 테이블 생성
CREATE TABLE BOARD
(
BOARD_NO NUMBER PRIMARY KEY,
BOARD_TITLE VARCHAR2(50) NOT NULL,
BOARD_CONTENT VARCHAR2(4000)NOT NULL,
GESIST_DATE DATE NOT NULL
);
2) 게시글 번호로 활용할 시퀀스 생성
CREATE SEQUENCE SEQ_BNO;
3) 100개의 게시글 반복문 사용하여 INSERT
BEGIN
FOR I IN 1..100
LOOP
INSERT INTO BOARD
VALUES(SEQ_BNO.NEXTVAL,'제목입니다'|| I , '내용입니다'||I,SYSDATE);
END LOOP;
END;
/
>> 출력결과 1 ~100 개의 행 생성됨
'ORACLE' 카테고리의 다른 글
ORACLE 14. OBJECT(TRIGGER) (1) | 2022.11.29 |
---|---|
ORACLE 13. PLSQL _예외처리 (0) | 2022.11.25 |
ORACLE 13. PLSQL _조건문 (0) | 2022.11.25 |
ORACLE 12. OBJECT (SEQUENCE) (0) | 2022.11.25 |
ORACLE 11. OBJECT (VIEW) _ VIEW 옵션 (0) | 2022.11.24 |