ORACLE/PL/SQL

PL/SQL 이란? (기본개념)

zammanza 2012. 3. 17. 18:22

PL/SQL란?

 

Procedural Language/SQL 란 말로, ORACLE에서 만든 언어로 ORACLE 제품 내에서는 사용이 가능하나 다른 제품에선 지원되지 않는다.

 

- SQL언어에 절차형 프로그래밍 언어의 장점을 살려 만든 SQL의 확장 언어

 

SQL의 단점?

- 같은 테이블에 여러 개의 행을 입력하는 경우, 동일한 문장을 반복적으로 실행해야 한다.

- 이미 입력한 데이터를 다시 입력하려고 할때 발생하는 에러를 처리할수 없다.

- 반복적으로 사용되는 SQL 문을 LIBRARY로 생성해 둘 수 없다.

 

PL/SQL은 위와 같은 SQL언어의 단점을 보완한다.

 

 

 

<PL/SQL의 종류>

 

#. Anonymous procedure

- 이름없이 사용되는 PL/SQL 블록

- DB에 저장되지 않고, 사용자가 실행하려는 SQL문을 필요로 할때마다 반복적으로 작성하여 실행하는 방법

 

#.프로시저(Stored Procedure)

- 각 프로그램 별로 이름을 가지고 데이터베이스에 저장되어 사용되며, 인자를 받아서 호출되고 실행된다.

 

#.함수(Stored Function)

- 각 프로그램 별로 이름을 가지고 데이터베이스에 저장되어 사용된다.

- 인자를 받아서 호출되고 , 실행되며, 그 결과를 반환한다.

- 일반적으로, 값을 계산하기 위해 사용된다.

 

#패키지(Package)

#트리거(Trigger)

 

 

 

<PL/SQL의 블록 구조>

 
- PL/SQL 블록내에서는 한 문장이 종료할 때마다 세미콜론(;)을 사용 한다.  
END뒤에 세미콜론(;)을 사용하여 하나의 블록이 끝났다는 것을 명시 한다.  

- 선언부 , 실행부, 예외처리부로 구성

 
---------------------------------------   

DECLARE : 선언부 -> 생략가능(Optional)

- 변수 , 커서 , 사용자 정의 예외 선언

---------------------------------------

BEGIN -> 필수적(Mandatory)

- SQL 실행문 , PL/SQL 실행문


EXCEPTION : 예외처리부 -> 생략가능(Optional)

- 예외가 발생되었을 때 처리

---------------------------------------

END; -> 필수적(Mandatory)
--------------------------------------- 






출처 : 
http://blog.naver.com/my0biho/40145999365









[출처]
 Oracle - PL/SQL란?|작성자 비호