Oracle은 강력한 저장 프로시저 기능을 갖춘 관계형 데이터베이스 관리 시스템입니다. 개발자로서 저장 프로시저의 구문을 숙지해야만 비즈니스 요구 사항에 따라 효율적이고 간단하며 안전한 데이터베이스 운영을 달성할 수 있습니다. 이 문서에서는 Oracle의 저장 프로시저 구문을 소개합니다.
1. 저장 프로시저 소개
오라클에서 저장 프로시저는 PL/SQL 언어로 작성된 일련의 SQL 문 및 제어 구조인 데이터베이스 개체입니다. 여러 SQL 문을 캡슐화하는 재사용 가능한 프로그램으로, 복잡한 비즈니스 로직을 구현하고 데이터베이스 운영 효율성을 크게 향상시킬 수 있습니다.
저장 프로시저에는 다음과 같은 특징이 있습니다.
2. 저장 프로시저 생성 및 실행
오라클에서 저장 프로시저를 생성하려면 CREATE PROCEDURE 문을 사용해야 합니다. 구문은 다음과 같습니다.
CREATE. [OR REPLACE] PROCEDURE 프로시저_이름
[(매개변수1 [IN | OUT | IN OUT] type1, [매개변수2 [IN | OUT | IN OUT] type2,...])]
IS
--변수 선언
BEGIN
-- SQL 문 실행
END;
그 중
예를 들어 다음은 간단한 저장 프로시저입니다.
CREATE OR REPLACE PROCEDURE HelloWorld
IS
BEGIN
DBMS_OUTPUT.PUT_LINE('Hello, World!');
END;
EXECUTE 또는 저장 프로시저를 실행하는 EXEC 문, 구문은 다음과 같습니다.
EXECUTE 프로시저_이름;
또는:
EXEC 프로시져_이름;
예:
EXECUTE HelloWorld;
또는:
EXEC HelloWorld;
3 . 저장 프로시저의 변수 및 제어 구조
저장 프로시저에서는 변수 및 제어 구조를 사용하여 보다 복잡한 비즈니스 로직을 구현할 수 있습니다.
Oracle의 변수에는 다음과 같은 유형이 있습니다.
변수 선언 구문은 다음과 같습니다.
DECLARE
variable_name Variable_type [NOT NULL] [:= value];
예:
DECLARE
v_emp_id NUMBER := 1001;
v_emp_name VARCHAR2(20): = 'John' ;
v_salary NUMBER(6,2);
오라클은 IF, CASE, LOOP 등을 포함한 다양한 제어 구조를 지원합니다.
IF 문은 조건에 따라 다양한 작업을 수행하는 데 사용됩니다. 구문은 다음과 같습니다.
IF 조건 THEN
문;
[ELSIF 조건 THEN
문;]
[ELSE
문;]
END IF;
예:
IF v_salary > 5000 THEN
v_bonus := v_salary * 0.1;
ELSIF v_salary > 3000 THEN
v_bonus := v_salary * 0.05;
ELSE
v_bonus := 0;
END IF;
CASE 문 다양한 연산을 수행하기 위해 표현식의 다양한 값을 기반으로 사용되며 구문은 다음과 같습니다.
CASE 표현식
WHEN value1 THEN
문;
WHEN value2 THEN
문;
...
[ELSE
문 ;]
END CASE;
예:
CASE v_grade
WHEN 'A' THEN
v_gpa := 4.0;
WHEN 'B' THEN
v_gpa := 3.0;
ELSE
v_gpa := 2.0;
END CASE ;
LOOP 문은 특정 Some 작업을 반복적으로 실행하는 데 사용되며 구문은 다음과 같습니다.
LOOP
문;
[EXIT | EXIT WHEN v_salary = 0;
END LOOP;
PL/SQL 코드 호출:
DECLARE
BEGIN
GET_EMPLOYEE_NAME(1001, v_emp_name);DBMS_OUTPUT.PUT_LINE('직원 이름은 ' || v_emp_name) ;
END ;
SQL> VARIABLE v_emp_name VARCHAR2(20);
SQL> 이 기사의 소개를 통해 저장 프로시저의 생성 및 실행, 변수 사용을 포함한 Oracle의 저장 프로시저 구문을 이해합니다. 제어 구조, 저장 프로시저 호출 등이 있습니다. 개발자로서 이러한 구문을 익히면 데이터베이스 작업의 효율성을 크게 향상시킬 수 있습니다.
위 내용은 Oracle의 저장 프로시저 구문을 소개하는 기사의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!