본문 바로가기
📌 1. 개발 & 프로그래밍/Oracle & 데이터베이스

16강: 재사용 가능한 코드 블록 - 저장 프로시저

by lastdetective 2025. 5. 5.
반응형

 

📊 오라클 데이터베이스 마스터하기

 16강: 재사용 가능한 코드 블록 - 저장 프로시저

안녕하세요! 이번 강의에서는 데이터베이스에 저장하여 재사용할 수 있는 PL/SQL 코드 블록인 저장 프로시저를 배워보겠습니다.

🔄 1. 저장 프로시저란?

데이터베이스에 저장되어 이름으로 호출 가능한 PL/SQL 코드 블록입니다.

✨ 2. 주요 장점

  • 코드 재사용성 향상
  • 네트워크 트래픽 감소로 성능 향상
  • 보안 강화 (직접 테이블 접근 대신 프로시저 실행)
  • 유지보수 용이성

🛠️ 3. 프로시저 생성

CREATE OR REPLACE PROCEDURE get_employee_info (
    p_id IN employees.employee_id%TYPE
)
IS
    v_name employees.first_name%TYPE;
    v_salary employees.salary%TYPE;
BEGIN
    SELECT first_name, salary INTO v_name, v_salary
    FROM employees WHERE employee_id = p_id;
    
    DBMS_OUTPUT.PUT_LINE('이름: ' || v_name || ', 급여: ' || v_salary);
EXCEPTION
    WHEN NO_DATA_FOUND THEN
        DBMS_OUTPUT.PUT_LINE('직원을 찾을 수 없습니다.');
END;
/

⚡ 4. 프로시저 실행

-- SQL*Plus/SQL Developer에서
EXECUTE get_employee_info(100);

-- PL/SQL 블록 내에서
BEGIN
    get_employee_info(101);
END;
/

📤 5. 매개변수 유형

  • IN: 입력 전용 (기본값)
  • OUT: 출력 전용
  • IN OUT: 입출력 모두 가능

✏️ 6. 프로시저 수정/삭제

-- 수정 (OR REPLACE 사용)
CREATE OR REPLACE PROCEDURE get_employee_info ...

-- 삭제
DROP PROCEDURE get_employee_info;

팁: 자주 사용하는 비즈니스 로직은 저장 프로시저로 구현하면 애플리케이션 성능을 크게 향상시킬 수 있습니다.

이번 강의에서는 저장 프로시저의 생성과 사용 방법을 학습했습니다. 다음 강의에서는 함수(Function)에 대해 알아보겠습니다.

728x90
반응형