“无法创建OLE DB提供程序的实例" Windows身份验证用户时出错 [英] "Cannot create an instance of OLE DB provider" error as Windows Authentication user

查看:316
本文介绍了“无法创建OLE DB提供程序的实例" Windows身份验证用户时出错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试从Oracle服务器上的MS SQL Server运行openrowset.

I am trying to run openrowset from MS SQL Server on an Oracle server.

当我执行以下命令时:

select * from
OPENROWSET('OraOLEDB.Oracle','srv';'user';'pass', 
'select * from table')

发生以下错误

Msg 7302, Level 16, State 1, Line 1
Cannot create an instance of OLE DB provider "OraOLEDB.Oracle" for linked server "(null)".

谁能告诉我如何在OraOLEDB.Oracle中使用openrowset?

Can anyone tell me how I can use openrowset with OraOLEDB.Oracle?

我正在使用64位版本的MS SQL Server和Oracle OLEDB驱动程序.

I am using 64 bit version of MS SQL Server and Oracle OLEDB driver.

我已经在运行 Windows 7 x64 &的两台计算机上进行了尝试 Windows Server 2008 x64 MS SQL Server 2008 x64 .两者都显示相同的错误消息.

I have tried this on two machines running Windows 7 x64 & Windows Server 2008 x64 with MS SQL Server 2008 x64. Both showed the same error message.

推荐答案

在SQL Server企业管理器中,打开\Server Objects\Linked Servers\Providers,右键单击OraOLEDB.Oracle提供程序,选择属性并检查"Allow inprocess"选项.重新创建链接的服务器,然后再次测试.

In SQL Server Enterprise Manager, open \Server Objects\Linked Servers\Providers, right click on the OraOLEDB.Oracle provider, select properties and check the "Allow inprocess" option. Recreate your linked server and test again.

如果您无权访问SQL Server Management Studio,也可以执行以下查询:

You can also execute the following query if you don't have access to SQL Server Management Studio :

EXEC master.dbo.sp_MSset_oledb_prop N'OraOLEDB.Oracle', N'AllowInProcess', 1

这篇关于“无法创建OLE DB提供程序的实例" Windows身份验证用户时出错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆