2010. 6. 29. 14:24
[Oracle] PL/SQL
2010. 6. 29. 14:24 in Database / Sql
PL/SQL 이란 ?
- PL/SQL 은 Oracle’s Procedural Language extension to SQL. 의 약자 입니다.
- SQL문장에서 변수정의, 조건처리(IF), 반복처리(LOOP, WHILE, FOR)등을 지원하며, 오라클 자체에
내장되어 있는 Procedure Language입니다
- PL/SQL 은 Oracle’s Procedural Language extension to SQL. 의 약자 입니다.
- SQL문장에서 변수정의, 조건처리(IF), 반복처리(LOOP, WHILE, FOR)등을 지원하며, 오라클 자체에
내장되어 있는 Procedure Language입니다
- DECLARE문을 이용하여 정의되며, 선언문의 사용은 선택 사항입니다.
- PL/SQL 문은 블록 구조로 되어 있고 PL/SQL 자신이 컴파일 엔진을 가지고 있습니다
PL/SQL의 장점
- PL/SQL 문은 BLOCK 구조로 다수의 SQL 문을 한번에 ORACLE DB 로 보내서 처리하므로 수행속도를
향상 시킬수 있습니다.
- PL/SQL 의 모든 요소는 하나 또는 두개이상의 블록으로 구성하여 모듈화가 가능하다.
- 보다 강력한 프로그램을 작성하기 위해서 큰 블록안에 소블럭을 위치시킬 수 있습니다.
- Variable, Constant, Cursor, Exception을 정의하고, SQL문장과 Procedural 문장에서 사용합니다.
- 단순, 복잡한 데이터형태의 변수를 선언합니다.
- 테이블의 데이터 구조와 DataBase의 컬럼럼에 준하여 동적으로 변수를 선언 할 수 있습니다.
- Exception 처리 루틴을 이용하여 Oracle Server Error를 처리합니다.
- 사용자 정의 에러를 선언하고 Exception 처리 루틴으로 처리 가능 합니다.
1. 프로시져
- 특정 작업을 수행할수 있고, 이름이 있는 PL/SQL 블록으로서. 매개 변수를 받을수 있고, 반복적으로
사용할수 있습니다. 보통 연속 실행 또는 구현이 복잡한 트랜잭션을 수행하는 PL/SQL블록을 데이터
베이스에 저장하기 위해 생성합니다.
* CREATE OR REPLACE 구문을 사용하여 생성합니다.
* IS 로 PL/SQL의 블록을 시작합니다.
* LOCAL 변수는 IS 와 BEGIN 사이에 선언합니다.
2. 함수(Function)
- 보통 값을 계산하고 결과값을 반환하기 위해서 함수를 많이 사용 합니다.
- 대부분 구성이 프로시저와 유사 하지만 IN 파라미터만 사용 할 수 있습니다.
- 반드시 반환될 값의 데이터 타입을 RETURN문에 선언해야 합니다.
- 또한 PL/SQL블록 내에서 RETURN문을 통해서 반드시 값을 반환해야 합니다.
- PL/SQL 문은 블록 구조로 되어 있고 PL/SQL 자신이 컴파일 엔진을 가지고 있습니다
PL/SQL의 장점
- PL/SQL 문은 BLOCK 구조로 다수의 SQL 문을 한번에 ORACLE DB 로 보내서 처리하므로 수행속도를
향상 시킬수 있습니다.
- PL/SQL 의 모든 요소는 하나 또는 두개이상의 블록으로 구성하여 모듈화가 가능하다.
- 보다 강력한 프로그램을 작성하기 위해서 큰 블록안에 소블럭을 위치시킬 수 있습니다.
- Variable, Constant, Cursor, Exception을 정의하고, SQL문장과 Procedural 문장에서 사용합니다.
- 단순, 복잡한 데이터형태의 변수를 선언합니다.
- 테이블의 데이터 구조와 DataBase의 컬럼럼에 준하여 동적으로 변수를 선언 할 수 있습니다.
- Exception 처리 루틴을 이용하여 Oracle Server Error를 처리합니다.
- 사용자 정의 에러를 선언하고 Exception 처리 루틴으로 처리 가능 합니다.
1. 프로시져
- 특정 작업을 수행할수 있고, 이름이 있는 PL/SQL 블록으로서. 매개 변수를 받을수 있고, 반복적으로
사용할수 있습니다. 보통 연속 실행 또는 구현이 복잡한 트랜잭션을 수행하는 PL/SQL블록을 데이터
베이스에 저장하기 위해 생성합니다.
* CREATE OR REPLACE 구문을 사용하여 생성합니다.
* IS 로 PL/SQL의 블록을 시작합니다.
* LOCAL 변수는 IS 와 BEGIN 사이에 선언합니다.
2. 함수(Function)
- 보통 값을 계산하고 결과값을 반환하기 위해서 함수를 많이 사용 합니다.
- 대부분 구성이 프로시저와 유사 하지만 IN 파라미터만 사용 할 수 있습니다.
- 반드시 반환될 값의 데이터 타입을 RETURN문에 선언해야 합니다.
- 또한 PL/SQL블록 내에서 RETURN문을 통해서 반드시 값을 반환해야 합니다.
3. package
- 패키지(package)는 오라클 데이터베이스에 저장되어 있는 서로 관련있는 PL/SQL 프로지져와 함수들의
집합 입니다
- 패키지는 선언부와 본문 두 부분으로 나누어 집니다.
4. 트리거
- INSERT, UPDATE, DELETE문이 TABLE에 대해 행해질 때 묵시적으로 수행되는 PROCEDURE 입니다.
- Trigger는 TABLE과는 별도로 DATABASE에 저장됩니다.
- Trigger는 VIEW에 대해서가 아니라 TABLE에 관해서만 정의될 수 있습니다.
'Database / Sql' 카테고리의 다른 글
[Oracle] 다른 테이블 조인해서 UPDATE 하기 (0) | 2010.09.05 |
---|---|
[Oracle] TOAD 기본 단축키 (0) | 2010.08.05 |
[Oracle] 함수 정리 (0) | 2010.06.28 |
SELECT INTO와 INSERT SELECT (0) | 2010.06.21 |
[Oracle] 윈도우7에 Oracle 10g 설치 에러 발생시 (0) | 2010.05.31 |