日期:2014-05-17  浏览次数:20480 次

100分 求解SQL Server 2008 创建连接 Oracle 的OLEDB link server的7303错误
我在SQL Server 2008(32位) 创建一个连接到Oracle 的link server, link server用的provider是OraOLEDB.Oracle.

我安装了从oracle 官网上下载的ODAC的包ODAC1120320Xcopy_32bit 中的Instant_Client_11.2 和oracle的OLEDB provider. 并在excel中使用Data Connection Wizard 中的Oracle Provider for OLE DB进行了测试,能够成功连接到oracle数据库。并且获得数据。
说明我能成功连接到oracle database 的service 上。

但是我在SQL Server 2008中创建link server时遇到了以下的错误。

TITLE: Microsoft SQL Server Management Studio
------------------------------

The linked server has been created but failed a connection test. Do you want to keep the linked server?

------------------------------
ADDITIONAL INFORMATION:

An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)

------------------------------

Cannot initialize the data source object of OLE DB provider "OraOLEDB.Oracle" for linked server "MAXDEV".
OLE DB provider "OraOLEDB.Oracle" for linked server "MAXDEV" returned message "". (Microsoft SQL Server, Error: 7303)

For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.1600&EvtSrc=MSSQLServer&EvtID=7303&LinkId=20476

------------------------------
BUTTONS:

&Yes
&No
------------------------------

我配置的link server的信息如下:
Provider:Oracle Provider for OLE DB
product: OraOLEDB
DataSource:MAXDEV
provider string:MAXDEV 

而且在link server 的security 面板中我输入了正确的用户名和密码,勾选了OraOLEDB.Oracle 这个provider的Allow in Process。

有哪位大神晓得是什么问题啊?帮帮忙 谢谢先啦。



------解决方案--------------------
http://social.msdn.microsoft.com/Forums/en-US/sqldataaccess/thread/a1a8dcbc-027c-4794-b13a-8bd4d7d4d682/
------解决方案--------------------
http://social.msdn.microsoft.com/Forums/en-AU/transactsql/thread/1ec4ffae-30db-40df-9972-f42fb4c4f052
------解决方案--------------------
不能初始化数据源,你有配置oledb吗