使用SQL Server的输出参数调用Oracle存储过程

前端之家收集整理的这篇文章主要介绍了使用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;
原文链接:https://www.f2er.com/mssql/82471.html

猜你在找的MsSQL相关文章