【问题标题】:Calling an Oracle stored procedure that uses an output parameter from Microsoft SQL Server调用使用 Microsoft SQL Server 的输出参数的 Oracle 存储过程
【发布时间】:2012-07-04 15:22:38
【问题描述】:

我正在尝试在 Oracle 10g 服务器上执行一个存储过程,它从 SQL Server 2008 查询以输出参数的形式返回其结果。

Oracle 存储过程声明如下所示:

 PROCEDURE MY_PROC(
     ID IN NUMBER,
     RESULT OUT CURSOR_TYPE);

如何使用 OpenQuery 或任何查询 Oracle 的方法从 MS SQL Server 2008 调用此存储过程,并能够查看存储在“RESULT”中的结果集?

【问题讨论】:

  • 我在想可能有一种方法可以用OPENROWSET 为 SQL 服务器做到这一点,但我不确定 oracle .. 有这个 blog post 可以为你提供方向.

标签: sql sql-server oracle


【解决方案1】:

我从 SQL SERVER 到 SQL SERVER 都这样做了,而且效果很好。 也许在 Oracle 中你需要一些 chages。

这是我在 sql server 中的代码

--drop proc proc_test_test 创建过程 proc_test_test (

@一个整数, @b int 输出

) 作为 开始

设置@b = @a*6+4

结束

选择 *

from openrowset('type','服务器名';'user';'pass',

'声明@answer int ;

exec db.dbo.proc_test_test @a = 1, @b = @answer 输出;

选择@answer 作为' )

【讨论】:

    猜你喜欢
    • 2012-11-24
    • 1970-01-01
    • 1970-01-01
    • 2012-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多