CREATE OR REPLACE PROCEDURE ADJDK.TEST10(V_SU IN NUMBER) --선언문(매개변수)
IS
IN_SU NUMBER(3) NOT NULL := 1;
NOT_ONE_ERROR EXCEPTION; --에러를 정의합니다.
BEGIN
DBMS_OUTPUT.PUT_LINE(IN_SU);
WHILE IN_SU <= V_SU LOOP --WHILE문을 도는 조건입니다.
DBMS_OUTPUT.PUT_LINE('현재 값은'||IN_SU||'입니다.');
IN_SU := IN_SU + 1; --IN_SU를 +1씩 해줍니다.
EXIT WHEN IN_SU > V_SU; --해당 조건이면 while문을 탈출합니다.
END LOOP;
IN_SU := 1;
LOOP
DBMS_OUTPUT.PUT_LINE('현재값은 '||IN_SU||'입니다.(LOOP)');
IN_SU := IN_SU + 1; --IN_SU를 +1씩 해줍니다.
EXIT WHEN IN_SU > V_SU; --해당 조건이면 while문을 탈출합니다.
END LOOP;
EXCEPTION --에러 시작
WHEN NOT_ONE_ERROR THEN --해당 에러라면 밑에 구문처리합니다.
DBMS_OUTPUT.PUT_LINE('입력한 숫자는 1이 아닙니다.');
WHEN OTHERS THEN --다른 에러라면 밑에 구문을 처리합니다.
DBMS_OUTPUT.PUT_LINE('예외발생');
END TEST10; --프로시저 마침
/
EXEC TEST10(3); --실행구문
'DATABASE > ORACLE' 카테고리의 다른 글
ORACLE Error : ORA-12519, Error preloading the connection pool, no appropriate service handler found (0) | 2019.03.28 |
---|---|
ORACLE PROCEDURE 쿼리 COMMIT 또는 ROLLBACK (0) | 2017.02.16 |
ORACLE FOR LOOP구문 (0) | 2017.02.16 |
ORACLE 프로시저 IF문과 EXCEPTION처리방법 (0) | 2017.02.16 |
ORACLE PLSQL (0) | 2017.02.12 |