저장 프로시저를 호출하는 Oracle 데이터베이스는 일반적인 데이터베이스 운영 기술이며 실제 응용 프로그램에서 자주 사용됩니다. Oracle 데이터베이스를 사용하여 저장 프로시저를 호출하는 경우 요구 사항을 충족하도록 매개변수를 설정해야 합니다. 이번 글에서는 Oracle 호출 저장 프로시저의 매개변수 설정 방법에 대해 살펴보겠습니다.
1. 저장 프로시저의 정의
저장 프로시저는 Oracle 데이터베이스에 저장된 PL/SQL 언어 프로그램 코드로, 특정 데이터베이스 작업 작업을 완료하는 데 사용됩니다. 저장 프로시저는 일반적으로 여러 애플리케이션에서 공유되므로 데이터베이스 애플리케이션의 효율성과 보안을 향상시킬 수 있습니다.
2. 저장 프로시저의 매개변수
저장 프로시저의 매개변수는 저장 프로시저에 전달되는 변수를 의미합니다. 매개변수는 입력 매개변수, 출력 매개변수, 입출력 매개변수의 세 가지 유형으로 나눌 수 있습니다.
1. 입력 매개변수
입력 매개변수는 저장 프로시저의 입력 데이터 소스로 사용되며 저장 프로시저의 계산 및 처리에 사용될 수 있습니다. 입력 매개변수는 문자열, 숫자, 날짜, 커서 등과 같은 모든 유효한 데이터 유형이 될 수 있습니다.
저장 프로시저에서 입력 매개변수를 정의하는 구문은 다음과 같습니다.
CREATE PROCEDURE procedure_name( input_parameter1 datatype, input_parameter2 datatype, ... )
그 중 datatype은 입력 매개변수의 데이터 유형이고, input_parameter1은 입력 매개변수의 이름입니다. 여러 입력 매개변수는 쉼표로 구분됩니다.
2. 출력 매개변수
출력 매개변수는 저장 프로시저 처리 결과이며, 처리 결과는 출력 매개변수를 통해 호출자에게 반환됩니다. 출력 매개변수는 문자열, 숫자, 날짜, 커서 등과 같은 모든 데이터 유형이 될 수 있습니다.
저장 프로시저에서 출력 매개변수를 정의하는 구문은 다음과 같습니다.
CREATE PROCEDURE procedure_name( output_parameter1 OUT datatype, output_parameter2 OUT datatype, ... )
그 중 OUT 키워드는 해당 매개변수가 출력 매개변수임을 나타냅니다. datatype은 출력 매개변수의 데이터 유형이고, output_parameter1은 출력 매개변수의 이름입니다. 여러 출력 매개변수는 쉼표로 구분됩니다.
3. 입/출력 매개변수
입/출력 매개변수는 데이터를 전송하고 처리 결과를 반환하는 데 사용됩니다. 저장 프로시저에서 입/출력 매개변수를 정의하는 구문은 다음과 같습니다.
CREATE PROCEDURE procedure_name( in_out_parameter1 IN OUT datatype, in_out_parameter2 IN OUT datatype, ... )
그 중 IN 키워드는 매개변수가 입력 매개변수임을 나타내고, OUT 키워드는 매개변수가 출력 매개변수임을 나타냅니다. datatype은 입/출력 매개변수의 데이터 유형이고, in_out_parameter1은 입/출력 매개변수의 이름입니다. 여러 입력/출력 매개변수는 쉼표로 구분됩니다.
3. 저장 프로시저 호출
오라클 데이터베이스를 사용하여 저장 프로시저를 호출하는 경우 저장 프로시저에 대한 매개변수를 설정해야 합니다. Oracle에서 저장 프로시저를 호출하기 위한 구문은 다음과 같습니다.
EXECUTE procedure_name(input_parameter1, input_parameter2, ..., output_parameter1, output_parameter2, ...)
그 중 EXECUTE는 저장 프로시저를 실행하는 키워드, 프로시저_이름은 저장 프로시저의 이름, input_parameter1, input_parameter2 등은 입력 매개변수, output_parameter1은 다음과 같습니다. , output_parameter2 등은 출력 매개변수입니다.
저장 프로시저를 호출할 때 매개 변수는 저장 프로시저에서 정의한 매개 변수 순서에 따라 순서대로 전달되어야 하며 출력 매개 변수는 입력 매개 변수 뒤에 와야 합니다. 그렇지 않으면 호출이 실패합니다.
4.예제
다음은 테이블의 데이터를 가격별로 작은 것부터 큰 것까지 정렬하여 출력하는 데 사용되는 간단한 Oracle 저장 프로시저 예입니다.
CREATE OR REPLACE PROCEDURE sort_table( input_table_name IN VARCHAR2, output_cursor OUT SYS_REFCURSOR ) IS BEGIN OPEN output_cursor FOR SELECT * FROM input_table_name ORDER BY price ASC; END;
이 저장 프로시저를 호출할 때 다음을 전달해야 합니다. 테이블 이름 및 출력 커서 :
VAR my_cursor REFCURSOR EXECUTE sort_table('my_table', :my_cursor) PRINT my_cursor
위 명령문은 my_table 테이블의 데이터를 가격별로 작은 것부터 큰 것까지 정렬하고 my_cursor라는 커서에 저장한 후 정렬된 데이터를 모두 출력합니다.
5. 요약
Oracle은 저장 프로시저를 호출할 때 매개변수를 설정해야 하며, 이는 입력 매개변수, 출력 매개변수 및 입/출력 매개변수를 통해 달성할 수 있습니다. 저장 프로시저를 호출할 때 저장 프로시저에서 정의한 매개변수 순서에 따라 매개변수를 순서대로 전달해야 합니다. 이 기사에서는 Oracle 호출 저장 프로시저의 매개변수 설정 방법을 자세히 소개합니다. 독자들에게 도움이 되기를 바랍니다.
위 내용은 Oracle 호출 저장 프로시저의 매개변수 설정 방법에 대한 심층 논의의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!