在SQL Server存储过程中获取oracle数据库列

时间:2014-08-04 21:04:59

标签: sql sql-server oracle sql-server-2005 stored-procedures

我在SQL Server 2005中有一个现有的存储过程。该存储过程由SSRS报告使用。它显示来自SQL Server的以下列 - Emp NameEmp IDDept IDDept Name

现在我需要在报告中添加另一列 - 名为Business Unit。但是这个专栏位于Oracle 8i数据库中。

在SQL Server存储过程中检索此列信息的最佳方法是什么?

似乎OPENROWSET - SQL Server 2005可能是一个不错的选择。

  

OPENROWSET:包含从OLE DB数据源访问远程数据所需的所有连接信息。此方法是访问链接服务器中的表的替代方法,是使用OLE DB连接和访问远程数据的一次性临时方法。要更频繁地引用OLE DB数据源,请改用链接服务器。

     

可以在查询的FROM子句中引用OPENROWSET函数,就好像它是表名一样。 OPENROWSET函数也可以作为INSERT,UPDATE或DELETE语句的目标表引用,具体取决于OLE DB提供程序的功能。虽然查询可能返回多个结果集,但OPENROWSET仅返回第一个结果集。

参考

  1. Insert results of a stored procedure into a temporary table
  2. Executing an Oracle Stored Procedure from SQL Server 2005
  3. executed an oracle stored procedure from sql server using the open query function

0 个答案:

没有答案