저장 프로시저(Stored Procedure)

반응형
  • 저장 프로시저의 개념
    • 특정한 작업을 수행하는 SQL문과 PL/SQL 문을 논리적으로 그룹화한 것을 의미하며, 그 자체만으로도 완전한 프로그램의 축소판이라고 할 수 있음
    • 연속된 SQL문들을 하나로 모아 SQL 서버에 미리 컴파일 해서 저장해 놓은 것을 말하며, 클라이언트로부터 호출문을 통해 복잡한 SQL의 일괄작업을 수행하는데 적합
    • 저장 프로시저의 구성
      • 선언부 : 타입,커서,상수,변수,예외,내포된 서브 프로그램을 선언하는 부분
      • 실행부 : 코드 실행을 제어하고 데이터를 조작하는 문장들을 작성하는 부분
      • 예외 처리부 : 저장 프로시저 실행 중에 발생하는 예외를 처리하는 부분
           
  • 저장 프로시저의 장점
    • 모듈별 프로그램 허용
    • 빠른 SQL 실행 시간
    • 보안성 향상
    • 네트워크 통신량 감소
         
  • 저장 프로시저의 생성
    • 생성을 위해서는 CREATE PROCEDURE 명령어 사용
    • 표기형식
      CREATE [ OR REPLACE ] PROCEDURE 프로시저명(파라미터) 프로시저 BODY
      • OR REPLACE : 선택적(Optional) 예약어로, 이 예약어를 사용하면 동일한 저장 프로시저명이 이미 존재하는 경우 기본의 저장 프로시저를 삭제하고 다시 생성할 필요 없이 기존의 저장 프로시저를 대체할 수 있음
      • 프로시저명 : 생성하려는 저장 프로시저에 할당하는 이름
      • 파라미터
        • IN : 호출되는 저장 프로시저에 값을 전달하는 것을 지정
        • OUT : 저장 프로시저가 그 호출 프로그램에게 값을 반환하는 것을 지정
        • INOUT : 저장 프로시저에 값을 전달해야 하고 저장 프로시저는 실행 후 호출 프로그램에게 값을 반환해야 한다는 것을 지정
      • 프로시저 BODY : 저장 프로시저의 본문코드가 나타내는 부분으로, BEGIN으로 시작하여 END로 끝나고, 적어도 하나의 SQL 문이 있어야 하며, 그렇지 않으면 오류가 발생
           
    • [ 지역변수 ]
  • 저장 프로시저의 예
       
  • 저장 프로시저의 제거
    • 제거 할려면 DROP PROCEDURE 명령어를 사용
    • 저장 프로시저를 제거하면 다시 되돌릴 수 없으며, 제거된 저장 프로시저를 다시 살리는 유일한 방법은 CREATE PROCEDURE 명령어를 사용해 다시 생성해야 함
         
  • 저장 프로시저의 실행
    • 저장 프로시저를 실행하기 위해서는 EXECUTE 명령어 또는 줄여서 EXEC 명령어를 사용
반응형

'밥벌이 > 데이터베이스' 카테고리의 다른 글

ODBC(Open Database Connectivity)  (0) 2010.09.10
ADO(ActiveX Data Object)  (0) 2010.09.10
관계형 데이터 구조의 이해  (0) 2010.09.03
관계형 데이터 연산  (0) 2010.09.03
SQL(Structured Query Language)  (0) 2010.09.03