加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

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

发布时间:2020-12-12 16:09:10 所属栏目:MsSql教程 来源:网络整理
导读:我在SQL Server 2008 R2中有一个Oracle链接服务器. 我需要执行Oracle存储过程(第一个输出参数,第二个过程中的输入参数): CREATE OR REPLACE PROCEDURE my1.spGetDate(CurrentDate OUT VARCHAR2)ISBEGIN-- set output parameter,no select statementsEND;CREA
我在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;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读