제공하는 명령문
- 모든 SQL문
- 변수 및 상수의 선언문
- 조건문
- 반복문
PL/SQL로 작성가능
- 패키지
- 프로시저
- 로직
- 트리거
PL/SQL의 기본 구조
DECLARE
선언부; -- 변수, 상수, 커서의 선언 가능
BEGIN
실행부; -- 문제 해결을 위한 로직이나 SQL문 작성 가능
[EXCEPTION 예외처리부;] - 생략가능
END;
선언부
변수와 상수, 커서 등을 선언할 수 있다.
선언은 DECLARE와 BEGIN 사이에서 선언된다.
- 변수 타입
- SCALAR(일반)
- COMPOSITE(배열)
- REFERENCE(참조)
- BIND(바인드 IN/OUT)DECLARE 변수명 데이터타입 := 초기값; 상수명 CONSTANT 데이터타입 := 초기값; BEGIN
실행부
다양한 로직이나 SQL문을 사용 가능하다.
BEGIN 과 END 사이에 선언된다.조건문
- IF
IF 조건문 THEN 명령문; END IF; ---------------------- IF 조건문 THEN 명령문; ELSIF 조건문 THEN 명령문; ELSE 명령문; END IF;
- CASE
CASE 변수 WHEN 조건1 THEN 명령문; WHEN 조건2 THEN 명령문; WHEN 조건3 THEN 명령문; END CASE;
반복문
- FOR
반복회수를 정확이 알고 있거나 횟수가 중요한 경우 사용FOR 제어변수 IN 초기값...최종값 LOOP END LOOP; ex) FOR i IN 1...10 LOOP END LOOP; FOR i IN REVERSE 1...10 LOOP END LOOP
- WHILE
WHILE 조건 LOOP 반복처리문 END LOOP; -- 조건이 FALSE가 될때 까지 반복