본문 바로가기
카테고리 없음

오라클 조회 프로시저 만들기 예제

by sftt 2023. 12. 25.

오라클 조회 프로시저 만들기 예제

소개

이 포스팅에서는 오라클 데이터베이스에서 조회 작업을 수행하는 프로시저를 만드는 방법에 대해 알아보겠습니다. 프로시저는 오라클에서 제공하는 저장 프로시저(Stored Procedure)로, 일련의 작업을 자동화하고 실행할 수 있도록 해줍니다. 조회 프로시저를 만들면 코드의 재사용성과 효율성을 높일 수 있습니다.

예제

이 예제에서는 employees 테이블에서 특정 부서에 속한 직원들의 정보를 조회하는 프로시저를 만들어보겠습니다.

  1. 프로시저 이름: get_employees_by_department
CREATE OR REPLACE PROCEDURE get_employees_by_department(
    department_id IN NUMBER
) IS
BEGIN
    -- 부서에 속한 직원들의 정보를 조회하는 쿼리
    SELECT employee_id, first_name, last_name, email
    INTO v_employee_id, v_first_name, v_last_name, v_email
    FROM employees
    WHERE department_id = department_id;

    -- 결과를 출력
    DBMS_OUTPUT.PUT_LINE('--- Employees in Department ' || department_id || ' ---');
    DBMS_OUTPUT.PUT_LINE('Employee ID: ' || v_employee_id);
    DBMS_OUTPUT.PUT_LINE('First Name: ' || v_first_name);
    DBMS_OUTPUT.PUT_LINE('Last Name: ' || v_last_name);
    DBMS_OUTPUT.PUT_LINE('Email: ' || v_email);
    DBMS_OUTPUT.PUT_LINE('-------------------------');
EXCEPTION
    WHEN NO_DATA_FOUND THEN
        DBMS_OUTPUT.PUT_LINE('No employees found in Department ' || department_id);
END;
/

위의 프로시저는 입력으로 department_id를 받아 해당 부서에 속한 직원들의 정보를 조회하고, 결과를 출력합니다. 만약 해당 부서에 직원이 없을 경우, NO_DATA_FOUND 예외를 처리하여 메시지를 출력합니다.

  1. 프로시저 실행
SET SERVEROUTPUT ON;
BEGIN
    get_employees_by_department(10); -- 부서 ID 10 조회
    get_employees_by_department(20); -- 부서 ID 20 조회
    get_employees_by_department(30); -- 부서 ID 30 조회
END;
/

위의 코드를 실행하면 department_id가 10, 20, 30인 부서에 속한 직원들의 정보가 각각 출력됩니다.

결론

위의 예제를 통해 오라클 조회 프로시저를 만드는 방법과 활용하는 방법에 대해 알아보았습니다. 프로시저는 데이터베이스 작업을 자동화하고 효율성을 높이는 데 큰 도움을 줄 수 있는 기능입니다.

댓글