본문 바로가기
Be Smart/SQL

[오라클] PL/SQL 저장 서브 프로그램: 효율적인 데이터베이스 관리의 핵심

by 반월하 2024. 7. 1.
728x90

PL/SQL 저장 서브프로그램: 효율적인 데이터베이스 관리의 핵심

저장 서브프로그램이란?

저장 서브프로그램(stored subprogram)은 PL/SQL 프로그램을 오라클 데이터베이스에 저장하여 필요할 때마다 쉽게 실행할 수 있게 만든 프로그램입니다. 익명 블록과 달리 이름이 지정되어 있어 여러 번 사용할 수 있으며, 메모리, 성능, 재사용성 등의 장점이 있습니다.

익명 블록(Anonymous Block)

익명 블록은 이름이 없는 PL/SQL 블록으로, 작성한 내용을 단 한 번 실행하는 데 사용됩니다. 오라클에 저장되지 않기 때문에 한 번 실행된 후 다시 실행하려면 블록을 다시 작성해야 합니다. 매번 내용을 작성하는 것이 불편하기 때문에 파일(.sql)에 저장하여 실행하기도 하지만, 이는 오라클에 저장되는 것은 아닙니다.

저장 서브프로그램의 필요성

PL/SQL로 만든 프로그램을 주기적으로 또는 여러 번 사용해야 하는 상황이 빈번히 발생합니다. 이러한 경우, PL/SQL 프로그램을 오라클에 저장해 두면 필요할 때마다 수행할 내용을 작성하지 않고 쉽게 실행할 수 있어 여러모로 편리합니다.

익명 블록과 저장 서브프로그램의 차이점

구분 익명 블록 저장 서브프로그램
이름 이름 없음 이름 지정
오라클 저장 저장할 수 없음 저장함
컴파일 실행할 때마다 컴파일 저장할 때 한 번 컴파일
공유 공유할 수 없음 공유하여 사용 가능
다른 응용 프로그램에서의 호출 가능 여부 호출할 수 없음 호출 가능

저장 서브프로그램의 종류

오라클에서 용도에 따라 저장 서브프로그램을 구현하는 방식은 다음과 같습니다.

1. 저장 프로시저(Stored Procedure)

일반적으로 특정 처리 작업을 수행하기 위한 서브프로그램으로, SQL문에서는 사용할 수 없습니다.

2. 저장 함수(Stored Function)

특정 연산을 거친 결과 값을 반환하는 서브프로그램으로, SQL문에서 사용할 수 있습니다.

3. 패키지(Package)

저장 서브프로그램을 그룹화하는 데 사용됩니다.

4. 트리거(Trigger)

특정 상황(이벤트)이 발생할 때 자동으로 연달아 수행할 기능을 구현하는 데 사용됩니다.

결론

저장 서브프로그램은 여러 번 사용할 목적으로 이름을 지정하여 오라클에 저장해 두는 PL/SQL 프로그램입니다. 익명 블록과 달리 저장 서브프로그램은 오라클에 저장하여 공유할 수 있으므로 메모리, 성능, 재사용성 등의 여러 면에서 장점이 있습니다. 이를 통해 데이터베이스 관리의 효율성을 크게 향상시킬 수 있습니다.

728x90

댓글