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

64位 2005/2008 连接服务器连oracle的问题
连接能建立
测试也同
但语句执行报错
消息 7399,级别 16,状态 1,第 1 行
链接服务器 "AAAA" 的 OLE DB 访问接口 "OraOLEDB.Oracle" 报错。访问被拒绝。
消息 7301,级别 16,状态 2,第 1 行
无法从链接服务器 "AAAA" 的 OLE DB 访问接口 "OraOLEDB.Oracle" 获取所需的接口("IID_IDBCreateCommand")。

网上查到:
. 权限问题
场景:64位的SQL Server服务器,使用的64位Oracle OLE DB provider(OraOLEDB.Oracle.1),添加Linked Server后,使用SQL Server认证登录的帐号有权限访问,而用Windows集成认证登录的域帐号访问时报错:
消息 7399,级别 16,状态 1,第 1 行
链接服务器 "ERP" 的 OLE DB 访问接口 "OraOLEDB.Oracle.1" 报错。访问被拒绝。
消息 7301,级别 16,状态 2,第 1 行
无法从链接服务器 "ERP" 的 OLE DB 访问接口 "OraOLEDB.Oracle.1" 获取所需的接口("IID_IDBCreateCommand")。
解决方法:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.1\Providers\OraOLEDB.Oracle.1]
"AllowInProcess"=dword:00000001
如果Providers下面没有OraOLEDB.Oracle.1则新建


修改后,无用,依然报错.
------解决方案--------------------
。。。你的连接怎么建的