2024. 4. 18. 15:59ㆍDBMS/PLSQL
PL/SQL은 SQL 명령어를 통합하여 절차적인 프로그래밍을 가능하게 한다.
1. PL/SQL Block 구조:
- 선언부(DECLARE): 변수 선언 등을 포함하며 실행부에서 사용하는 변수는 여기서 반드시 선언되어야 한다.
- 실행부(BEGIN): PL/SQL 코드가 실행되는 부분으로, SQL 문장 또는 PL/SQL 문장을 포함할 수 있다.
- 예외처리부(EXCEPTION): 예외 처리를 위한 부분으로, 오류 발생 시 처리할 내용을 정의한다.
2. 변수 선언:
- DECLARE 섹션에서 변수를 선언하며, 데이터 타입과 함께 변수를 지정할 수 있다. 초기값을 할당할 수도 있다.
- 예를 들어, v_id NUMBER(5)는 v_id라는 이름의 5자리 숫자형 변수를 선언하는 것이다.
DECLARE ---> 선언부, 실행부에서 사용하는 변수 선언
v_id number(5);
v_id1 number(5) not null := 10;
v_deptno departments.department_id%type;
v_deptno1 v_deptno%type;
v_name varchar2(10) := 'Adam';
v_num pls_integer;
3. 실행부:
- BEGIN과 END 사이에 실제 PL/SQL 코드가 위치하며, 변수에 값을 할당하거나 SQL 쿼리를 실행하는 등의 작업을 수행한다.
- PL/SQL 블록 내에서는 SQL 문장과 PL/SQL 문장을 함께 사용할 수 있다.
BEGIN ---> 실행부, PL/SQL,
SQL(select, dml, commit, rollback, savepoint)
PL/SQL 명령에서 단일행 함수 사용이 가능하다.
(GROUP 함수, DECODE함수 사용 안됨)
v_id := 10;
v_id := length(v_name);
4. 예외 처리(EXCEPTION):
- 예외가 발생할 경우 처리할 내용을 정의하는 부분이다. 예외가 발생하면 예외 처리기에서 정의된 내용이 실행된다.
5. DBMS_OUTPUT.PUT_LINE:
DBMS_OUTPUT.PUT_LINE
: PL/SQL 수행시 출력을 위한 오라클 제공 패키지
: ser serveroutput on 설정이 필요
6. Non-PL/SQL 변수:
- PL/SQL 블록 외부에서 정의되고 사용되는 변수를 의미한다.
- 호출 환경에서 변수를 선언하고, 블록 내에서 사용할 때는 ':'를 붙여 구분한다.
- 블록을 호출하는 환경에서 정의해서 사용하는 변수
- 호출 환경에서 선언하는 것이니 블록 밖에서 선언
블록 내에서 사용시는 :을 붙여서 pl/sql 변수와 구분한다.
'DBMS > PLSQL' 카테고리의 다른 글
bind 변수 사용 (0) | 2024.05.24 |
---|---|
fetch row 가 2건 이상일 때 오류 (0) | 2024.05.24 |
예외 처리 PRAGMA (0) | 2024.04.14 |
여러개의 행을 한 번에 가져오는 CURSOR LOOP (0) | 2024.04.13 |
삽입 정렬 insertion Sort (0) | 2024.03.18 |