无法在SQL Server 2008中使用Oracle设置链接服务器

时间:2011-11-24 06:50:49

标签: oracle sql-server-2008 oracle11g linked-server

我想将Oracle数据库与SQL Server链接起来。我使用过SQL Server的内置LinkedServer SP,但它返回了以下错误。

  

无法初始化OLE DB提供程序“MSDAORA”的数据源对象   对于链接服务器“OracleLinkedServer”。

我在SQL Server Express 2008中使用了以下命令来创建链接服务器。

EXEC sp_addlinkedserver   'OracleLinkedServer', 'Oracle',   'MSDAORA', 'OracleServer' 

EXEC sp_addlinkedsrvlogin 'OracleLinkedServer', false,  'sa', 'system',  '123456'

select * from OracleLinkedServer..system.CIL_NOTIFICATION

先谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

我找到了这个问题的解决方案。我安装的Oracle应用程序版本是11gR1

我的Oracle数据库未启动并挂载,因此我使用启动命令

然后我检查了数据库的监听器,应该启动它。

然后我修改了问题中提到的陈述。这是修改。

--add a linked server into SQL server
--parameters: serverName, ServerProduct, ProviderName, DataSource / Listener Name of desired database
EXEC sp_addlinkedserver   'OracleLinkedServer', 'Oracle',   'MSDAORA', 'PC-2.my.xgen/nb' 

--add login information into linked server
EXEC sp_addlinkedsrvlogin 'OracleLinkedServer', false,  Null, 'system',  '123456'

select * from OracleLinkedServer..SYSTEM.CIL_NOTIFICATION

它返回Oracle数据库表CIL_NOTIFICATION

中的所有记录