GOLDILOCKs 는 프로시져의 효율적인 기능을 위해 아래와 같은 함수를 지원합니다.
함수 |
설명 |
IF |
주어진 조건들 중 참인 것에 해당하는 구문을 수행 |
CASE | Simple CASE Searched CASE - WHEN 절 이후에 변수와 표현을 계산하여 맞는 부분을 실행 |
BASIC LOOP |
LOOP 와 END LOOP 키워드로 반복 수행할 일련의 구문을 수행 |
FOR LOOP |
주어진 범위의 정수 개수 만큼 일련의 구문을 수행 |
WHILE LOOP |
주어진 조건이 참인 동안 계속 구문을 수행 |
IF
gSQL> DECLARE
2 V1 INTEGER := 1;
3 BEGIN
4 IF V1 > 0 THEN
5 DBMS_OUTPUT.PUT_LINE( 'V1 = ' || V1 );
6 ELSIF V1 = 0 THEN
7 DBMS_OUTPUT.PUT_LINE( 'V1 = ' || V1 );
8 ELSE
9 DBMS_OUTPUt.PUT_LINE( 'V1 = ' || V1 );
10 END IF;
11 END;
12 /
V1 = 1
Anonymous PL block executed.CASE
Simple CASE Statement
gSQL> DECLARE
2 V1 VARCHAR(1) := '2';
3 BEGIN
4 CASE V1 WHEN '0' THEN DBMS_OUTPUT.PUT_LINE ('Result = 0');
5 WHEN '1' THEN DBMS_OUTPUT.PUT_LINE ('Result = 1');
6 WHEN '2' THEN DBMS_OUTPUT.PUT_LINE ('Result = 2');
7 ELSE DBMS_OUTPUT.PUT_LINE ('Result = Other');
8 END CASE;
9 END;
10 /
Result = 2
Anonymous PL block executed.Searched CASE Statement
gSQL> DECLARE
2 V1 VARCHAR(1) := '2';
3 BEGIN
4 CASE WHEN V1 = 0 THEN DBMS_OUTPUT.PUT_LINE ('Result = 0');
5 WHEN V1 = 1 THEN DBMS_OUTPUT.PUT_LINE ('Result = 1');
6 WHEN V1 = 2 THEN DBMS_OUTPUT.PUT_LINE ('Result = 2');
7 ELSE DBMS_OUTPUT.PUT_LINE ('Result = OTHER');
8 END CASE;
9 END;
10 /
Result = 2
Anonymous PL block executed.BASIC LOOP
gSQL> DECLARE
2 V1 INTEGER := 1;
3 BEGIN
4 LOOP
5 DBMS_OUTPUT.PUT_LINE( 'V1 = ' || V1 );
6 V1 := V1 + 1;
7 EXIT WHEN V1 > 3; -- Escape Condition
8 END LOOP;
9 END;
10 /
V1 = 1
V1 = 2
V1 = 3
Anonymous PL block executed.FOR LOOP
gSQL> DECLARE
2 V1 INTEGER;
3 BEGIN
4 FOR V1 IN 1 .. 3 LOOP
5 DBMS_OUTPUT.PUT_LINE( 'V1 = ' || V1 );
6 END LOOP;
7 END;
8 /
V1 = 1
V1 = 2
V1 = 3
Anonymous PL block executed.WHILE LOOP
gSQL> DECLARE
2 V1 INTEGER := 1;
3 BEGIN
4 WHILE V1 < 4 LOOP
5 DBMS_OUTPUT.PUT_LINE( 'V1 = ' || V1 );
6 V1 := V1 + 1;
7 END LOOP;
8 END;
9 /
V1 = 1
V1 = 2
V1 = 3
Anonymous PL block executed.'Database > Goldilocks' 카테고리의 다른 글
| [GOLDILOCKS] PL/SQL Exception 예외처리하기 (0) | 2018.08.21 |
|---|---|
| [GOLDILOCKS] PL/SQL DBMS_OUTPUT 옵션 사용하기 (0) | 2018.08.21 |
| [GOLDILOCKS] ERR-24000(19010): Invalid cursor state : A cursor was open on the StatementHandle. (0) | 2018.08.21 |
| [GOLDILOCKS] PL/SQL 암시적, 명시적 커서 사용하기 (0) | 2018.08.20 |
| [GOLDILOCKS] PL/SQL 의 데이터 타입 변수 선언하기 (0) | 2018.08.20 |