我想将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
先谢谢你的帮助。
答案 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
中的所有记录