source

SQL Server의 출력 매개 변수를 사용하여 Oracle 저장 프로시저 호출

ittop 2023. 7. 21. 21:56
반응형

SQL Server의 출력 매개 변수를 사용하여 Oracle 저장 프로시저 호출

SQL Server 2008 R2에 Oracle 연결 서버가 있습니다.Oracle 저장 프로시저를 실행해야 합니다(첫 번째에는 출력 매개 변수, 두 번째 프로시저에는 입력 매개 변수 포함).

CREATE OR REPLACE PROCEDURE my1.spGetDate(CurrentDate OUT VARCHAR2)
IS
BEGIN
-- set output parameter, no select statements
END;

CREATE OR REPLACE PROCEDURE my1.spDeleteOldRecords(CurrentDate IN VARCHAR2)
IS
BEGIN
-- conditional delete from oracle table, no select statements
END;

저는 이 질문에 대한 완전한 문서를 찾지 못했습니다. 매개 변수 없는 선택/비선택 절차가 있는 간단한 예만 있습니다. 이러한 절차를 호출하는 방법, 내부 선택 절차가 있는 절차, 기본 매개 변수 유형이 있는 다중 매개 변수 절차를 알고 싶습니다.

다음과 같이 작동해야 합니다.

DECLARE @dateval DATETIME

EXECUTE ('begin my1.spGetDate(?); end;', @dateval OUTPUT) AT ORA_DBLINK_NAME;

EXECUTE ('begin my1.spDeleteOldRecords(?); end;', @dateval) AT ORA_DBLINK_NAME;

여러 매개 변수가 있는 경우 다음과 같이 표시될 수 있습니다.

EXECUTE ('begin my1.spProc(?,?,?,?); end;', @param_in_1, @param_in_2, @param_out_3 OUTPUT, @param_out_4 OUTPUT) AT DBLINK_NAME;

REF CURSOR를 사용하고 해당 커서를 Oracle의 출력 변수로 선언합니다.Ref Cursor를 사용하여 Oracle Stored 프로시저에서 결과 세트를 검색할 수 있습니다.

언급URL : https://stackoverflow.com/questions/13741175/calling-oracle-stored-procedure-with-output-parameter-from-sql-server

반응형