解决SQL Server 阻止了对组件Ad Hoc Distributed Queries访问的方法

Posted *(00)*

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决SQL Server 阻止了对组件Ad Hoc Distributed Queries访问的方法相关的知识,希望对你有一定的参考价值。

 来源:http://www.htmer.com/article/922.htm

今天单位一ASP.NET网站,里面有个功能是导出数据,发现一导出就报错,报错内容是:SQL  Server 阻止了对组件 ‘Ad Hoc Distributed Queries‘ 的  STATEMENT‘OpenRowset/OpenDatasource‘  的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 ‘Ad Hoc  Distributed Queries‘。有关启用 ‘Ad Hoc Distributed Queries‘ 的详细信息,请参阅 SQL  Server 联机丛书中的 "外围应用配置器"。

看错误提示就知道是因为SQL Server的Ad Hoc Distributed Queries组件被禁用了,这里我用的SQL Server版本是2005,只需要开启Ad Hoc Distributed Queries就可以了,方法如下:

1.开启Ad Hoc Distributed Queries组件,在sql查询编辑器中执行如下语句:

1
2
3
4
exec sp_configure ‘show advanced options‘,1
reconfigure
exec sp_configure ‘Ad Hoc Distributed Queries‘,1
reconfigure

 

 

2.关闭Ad Hoc Distributed Queries组件,在sql查询编辑器中执行如下语句:

1
2
3
4
exec sp_configure ‘Ad Hoc Distributed Queries‘,0
reconfigure
exec sp_configure ‘show advanced options‘,0
reconfigure

 

 

 

 

 

------------------------------ 前台修改------------------------------ 

 

 

在程序中系统提示:SQL Server 阻止了对组件 ‘ Ad Hoc Distributed Queries ’ 的 STATEMENT  ‘ OpenRowset/OpenDatasource ’ 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 ‘ Ad Hoc Distributed Queries ’。有关启用 ‘ Ad Hoc Distributed Queries ’ 的详细信息,请参阅SQL Server联机丛书中的 “ 外围应用配置器 ”。

 
技术图片
问题截图

1、开始 — 所有程序 — Microsoft SQL Server 2008 R2 — SQL Server Management Studio(如图1-1)。

 
技术图片
图 1-1

2、进入后会弹出窗口【连接到服务器】,在【身份验证】选择中【Windows身份验证】— 点击【连接】(如图1-2)。

 
技术图片
图 1-2

3、在数据库服务实例名(如图1-3,GP-PCsql2008位置)点击鼠标右键【方面】。

 
技术图片
图 1-3

4、在窗口【查看方面】— 点击【常规】— 【方面】— 选择【外围应用配置器】(如图1-4)。

 
技术图片
图 1-4

5、找到【AdHocRemoteQueriesEnabled】— 选择【True】— 点击【确定】(如图1-5)退出后再登录程序即可。

 



以上是关于解决SQL Server 阻止了对组件Ad Hoc Distributed Queries访问的方法的主要内容,如果未能解决你的问题,请参考以下文章

解决SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource&#

解决SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource&

解决SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource&#

解决SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource&#

转载解决SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasour(代

[sql异常]SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的