1. PL/SQL 소개

A.  PL/SQL

  • SQL을 확장한 절차적 언어(Procedural Language)
  • 관계형 DB에서 사용되는 Oracle 표준 데이터 액세스 언어
  • 코드 실행 단위에 블록 구조 제공
  • 쉬운 코드 유지 관리 가능
  • 프로시저 생성자 제공
    • 변수, 상수 및 데이터 유형
    • 조건문 및 루프와 같은 제어 구조
    • 재사용 가능한 프로그램 단위

B. PL/SQL 런타임 구조

 

 

C. PL/SQL 장점

 

  • SQL & 프로시저 생성자 통합
  • 성능 향상
  • 모듈식 프로그램 개발
  • Oracle 툴과의 통합
  • 이식성
  • 예외처리

D. PL/SQL 블록 구조

 

DECLARE (선언)

- 선택사항

- 변수, 커서, 유저 정의 예외 선언

BEGIN --- END (실행) ** 필수**

- SQL 문

- PL/SQL 문

EXCEPTION (예외처리)

- 예외 발생 시 수행할 작업

 

E. PL/SQL 블록 유형

 

[프로시저]

SQL 또는 PL/SQL 문이 포함되어 있는 "명명된 객체"

 

 

 

 

 

         

[함수]

SQL 또는 PL/SQL문이 포함되어 있는 "명명된 객체"

지정된 데이터 유형의 RETURN 값 반환

 

 

 

 

     

[ANONYMOUS(익명 블록)]

이름이 지정되지 않은 블록

응용프로그램에서 인라인으로 선언,

응용프로그램이 실행 될 때마다 컴파일

DB에 저장되지 않음, 런타임에 PL/SQL엔진으로 전달되어 실행

 

 

[서브 프로그램]

데이터베이스에 저장되어 있는 명명된 PL/SQL 블록

필요에 따라 언제든 호출 가능

PROCEDURE 혹은 함수로 선언 가능

- 일반적 작업 수행 => PROCEDURE

- 값 계산 혹은 RETURN 값 반환 => 함수

서버 또는 응용 프로그램 레벨에서 저장 할 수 있음

 

F. PL/SQL BLOCK Example

DECLARE

   v_fname  VARCHAR2(20);

BEGIN

   SELECT first_name

   INTO v_fname

   FROM employees

   WHERE employee_id=100;

END;

/

G. PL/SQL BLOCK 출력 활성화

  • SELECT 한 결과 값이 v_fname에 저장되었지만 출력되지 않음
    • 1. SET SERVEROUTPUT ON
    • 미리 정의된 ORACLE 패키지와 해당 프로시저를 익명 블록에 사용
      • => DBMS_OUTPUT.PUT_LINE

 

 

사업자 정보 표시
(주)블루원 | 김홍태 | 서울특별시 용산구 원효로 4가 135 금홍 2빌딩 | 사업자 등록번호 : 106-86-76684 | TEL : 02-3272-7200 | Mail : support_ora@blueone.co.kr | 통신판매신고번호 : 호 | 사이버몰의 이용약관 바로가기

'DB - ORACLE > Oracle DB Admin ' 카테고리의 다른 글

3. PL/SQL 실행문 작성  (0) 2016.01.03
2. PL/SQL 변수 선언  (0) 2016.01.03
오라클 시노님(Synonym)  (0) 2016.01.03
오라클 집합쿼리  (0) 2016.01.03
오라클 다중 열 서브쿼리  (0) 2016.01.03

+ Recent posts