SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问

转载 2013年12月03日 17:32:39

    

原因:在从远程服务器复制数据到本地时出现“SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'Ad Hoc Distributed Queries'。有关启用 'Ad Hoc Distributed Queries' 的详细信息 ”错误,因此网上搜索,发现以下解决方法:

启用Ad Hoc Distributed Queries:

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



    使用完成后,关闭Ad Hoc Distributed Queries:

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

本人验证成功:

后查询SQL联机丛书,MSDN官方为下以内容:

 

默认情况下,SQL Server并不允许专案分布式查询使用OPENROWSET和OPENDATASOURCE。 When this option is set to 1, SQL Server allows ad hoc access.当这个选项被设置为1,SQL Server允许即席访问。 When this option is not set or is set to 0, SQL Server does not allow ad hoc access.当此选项未设置或设置为0,SQL Server不允许即席访问。

Ad hoc distributed queries use the OPENROWSET and OPENDATASOURCE functions to connect to remote data sources that use OLE DB.特设分布式查询使用OPENROWSET和OPENDATASOURCE函数连接到远程数据源,使用OLE DB。 OPENROWSET and OPENDATASOURCE should be used only to reference OLE DB data sources that are accessed infrequently. OPENROWSET和OPENDATASOURCE应该只用于引用OLE DB数据源很少访问。 For any data sources that will be accessed more than several times, define a linked server.将会比多次访问的任何数据源,定义链接服务器。

 Security Note 安全注意事项 
Enabling the use of ad hoc names means that any authenticated login to SQL Server can access the provider.启用使用的专案名称,意味着任何身份验证登录到SQL Server可以访问的供应商。 SQL Server administrators should enable this feature for providers that are safe to be accessed by any local login. SQL Server管理员应该启用此功能为供应商,安全,可以由任何本地登录访问。 For more information, see the DisallowAdhocAccess option in Accessing External Data .欲了解更多信息,请参阅在访问外部数据 的DisallowAdhocAccess选项

http://msdn.microsoft.com/en-us/library/ms187569.aspx

特此MARK!!!

SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDataso

查询相关资料,找到解决方法:     启用Ad Hoc Distributed Queries: exec sp_configure 'show advanced options',1 reco...
  • zzzzzzzert
  • zzzzzzzert
  • 2014年04月30日 17:24
  • 1266

SQL Server 阻止了对组件“Ad Hoc Distributed Queries”的 STATEMENT“OpenRowset/OpenDatasource”的访问

这些天一直在做.net导入导出Excel的程序。在这里写一下过程和遇到的问题。 一 》excel导入:excel导入有多种方式,我这里用到的是sqlserver的组件'Ad Hoc Distri...
  • newnazi
  • newnazi
  • 2016年01月11日 12:18
  • 549

Excel 解决SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问的方法

今天老板娘叫导入电话Excel记录信息,里面有个功能是导出数据,发现一导出就报错,报错内容是:SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STAT...
  • ninetowns2008
  • ninetowns2008
  • 2013年01月26日 21:24
  • 1369

SQL Server 阻止了对组件 \'Ad Hoc Distributed Queries\' 的访问

转载自博客园:http://www.cnblogs.com/jinzhao/archive/2009/12/01/1614826.html 想用openrowset查询远程数据库,结果提示SQL S...
  • qxy919
  • qxy919
  • 2015年07月15日 13:24
  • 1166

SQL 2008启用组件Ad Hoc Distributed Queries

SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服...
  • wxw_317
  • wxw_317
  • 2012年09月21日 16:08
  • 2202

SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' ......

问题提示:SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问 现状解...
  • boatking
  • boatking
  • 2014年01月06日 15:39
  • 787

SQL Server 已封鎖元件 'Ad Hoc Distributed Queries'

SQL Server 已封鎖元件 Ad Hoc Distributed Queries錯誤訊息:SQL Server 已封鎖元件 Ad Hoc Distributed Queries 的 STATEM...
  • niki190
  • niki190
  • 2008年09月24日 09:01
  • 1315

Ad Hoc Distributed Queries 的启用与关闭

在使用sql Server对外部数据进行查询时,可能会出现的问题:  如在Sql Server中查询一Access数据库  select * From OpenRowSet(microsoft.jet...
  • sxycgxj
  • sxycgxj
  • 2011年06月15日 11:52
  • 3776

SQL Server如何启用Ad Hoc Distributed Queries?

SQL Server数据库远程操作中,在使用openrowset/opendatasource前首先要启用Ad Hoc Distributed Queries服务,因为这个服务不安全所以SqlServ...
  • wsimei
  • wsimei
  • 2011年09月16日 13:44
  • 2420

SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 的访问

SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服...
  • ldl22847
  • ldl22847
  • 2012年05月23日 17:37
  • 616
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问
举报原因:
原因补充:

(最多只允许输入30个字)