从SQL Server 2005执行Oracle存储过程

3

我们如何从SQL Server 2005执行Oracle存储过程? 作为SQL Server脚本的一部分,我们需要执行一个Oracle 10g存储过程并将数据下载到SQL Server 2005。

1个回答

2
我相信你仍然可以使用 SELECT * FROM OPENQUERY(ORA_SERVER, 'EXECUTE sp;') 来完成这个任务。

约翰,有一个快速的问题。我运行了上面的脚本,它提示我这个错误信息: 无法处理对象“EXECUTE xxxx(SYSDATE-40,SYSDATE)”。链接服务器“lumd”的OLE DB提供程序“MSDAORA”指示该对象没有列或当前用户对该对象没有权限。我如何从SQL Server连接到Oracle服务器? - Yves
你能发布整个查询吗?我倾向于相信错误信息是真实的。 ;) - John Gietzen
另外,当您使用Oracle SQL Developer执行查询时会发生什么? - John Gietzen
在此处: SELECT * FROM OPENQUERY(lumd, 'execute REP.T2t.collect_all(SYSDATE - 40, SYSDATE );') - Yves
请问您能否确认是否已成功使用OPENQUERY函数从SQL Server执行了Oracle存储过程?如果是,您是如何做到的呢?因为我在使用OPENQUERY函数执行带参数的存储过程时遇到了问题。 - Yves
1
我不是Oracle大师,但如果你能在成功时执行“select 1“Result” from dual”,并在失败时执行“select 0“Result” from dual”,那么你只需要检查一下即可。 - John Gietzen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接