# PL/SQL 기본구조

<블록>

이름부

IS(AS)

  선언부

BEGIN

  실행부

EXCEPTION

  예외 처리부

END;

 

# 제어문

<IF 문>

IF 조건1 THEN

  조건처리1;

ELSE IF 조건2 THEN

  조건처리2;

ELSE

  조건처리n;

END IF;

 

<LOOP문>

LOOP

  처리문;

  EXIT [WHEN 조건];

END LOOP;

 

<WHILE문>

WHILE 조건

LOOP

  처리문;

END LOOP;

 

<FOR문>

FOR i IN [REVERSE] 1..9

LOOP

  처리문;

END LOOP;

 

<CONTINUE>

FOR i IN 1..9

LOOP

   CONTINUE WHEN i=5;

   DBMS_OUTPUT.PUT_LINE(i);

END LOOP;

 

# 사용자 정의 함수

<함수>

CREATE OR REPLACE FUNCTION 함수 이름 (매개변수1, 매개변수2, ...)

RETURN 데이터타입;

IS[AS]

  변수, 상수 등 선언

BEGIN

  실행부

 

  RETURN 반환값;

[EXCEPTION

  예외 처리부]

END [함수 이름];

 

<프로시저>

CREATE OR REPLACE PROCEDURE 프로시저 이름

  (매개변수1 [IN | OUT | IN OUT] 데이터타입 [:= 디폴트 값],

   매개변수2 [IN | OUT | IN OUT] 데이터타입 [:= 디폴트 값],

   ...

  )

IS[AS]

  변수, 상수 등 선언

BEGIN

  실행부

 

[EXCEPTION

  예외 처리부]

END [프로시저 이름];

 

*변수, 상수, 매개변수 명명법

 - 변수: vn_goods_cnt, vc_ord_no

 - 상수: cn_max_ord_psbt_cnt

 - 매개변수: pn_ord_cqty, pc_cust_no

+ Recent posts