본문 바로가기
BackEnd/DB, SQL

SQL 20편: PL/SQL 기초(블록, 변수와 상수 정의하기)

by summer_light 2022. 1. 18.

블록

PL/SQL프로그램의 기본 단위 

 

블록을 구성하는 키워드

DECLARE 선언부, 선택 실행에 사용될 변수, 상수, 커서 등을 선언
BEGIN 실행부, 필수 조건문, 반복문, SELECT, DML, 함수 등 정의
EXCEPTION 예외 처리부, 선택 예외 상황 처리 
END 필수 블록을 종료

 

PL/SQL문 작성 규칙

1. 블록을 구성하는 DECLARE, BEGIN, EXCEPTION 키워드에는 세미콜론을 사용하지 않는다.

2. 블록의 각 부분에서 실행해야 하는 문장 끝에는 ;을 사용한다. 

3. PL/SQL문은 마지막에 슬래시(/)를 사용하여 실행한다.

4. 주석 사용이 가능하다. (-- 또는 /* */)

 

*PL/SQL 실행 결과를 화면에 출력하기 위해서는 SERVEROUTPUT 환경 변수 값을 ON으로 변경해주어야 한다. 

SET SERVEROUTPUT ON;

 

*DBMS_OUTPUT 패키지의 PUT_LINE()은 출력할 때 사용한다.

DBMS_OUTPUT.PUT_LINE( 출력할 내용 );

 

 

 

변수와 상수

변수 정의하기

변수이름 자료형 := 표현식;

 

1. 기본 값이 있는 경우에는 := 대신 DEFAULT 값을 작성 

2. NULL이 저장되지 않게 하려면 자료형 뒤에 NOT NULL 키워드를 작성 

3. 상수를 정의하고 싶은 경우에는 자료형 앞에 CONSTANT 키워드를 작성

 

 

 

변수의 자료형 

1. 스칼라형

NUMBER, CHAR, VARCHAR, DATE, BOOLEAN 등

 

 

2. 참조형

특정 테이블의 열 구조 또는 행 구조를 참조하는 자료형

 

1) 열을 참조할 때

- %TYPE, 저장할 값을 직접 지정할 수 있으며, DEFAULT 값을 지정할 수 있다. 

변수이름 테이블이름.열이름%TYPE := 표현식 

2) 행을 참조할 때

- %ROWTYPE, 저장할 값을 직접 지정할 수 없음

변수이름 테이블이름%ROWTYPE 

DECLARE
변수이름 테이블이름 %ROWTYPE;

BEGIN 
SELECT 열1, 열2, 열3 INTO 변수이름
FROM 테이블이름

END;
/

 

 

3. 복합형

컬렉션, 레코드

 

 

4. LOB형

대용량의 텍스트, 이미지, 동영상, 사운드 등 대용량 데이터를 저장하기 위한 자료형.

대표적으로 BLOB, CLOB 등이 있다. 

 

 

댓글