`

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

 
阅读更多

SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'Ad Hoc Distributed Queries'。有关启用 'Ad Hoc Distributed Queries' 的详细信息 

2011-04-15 09:47:30|  分类: SQL小结 |字号 订阅

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

    在Sql Server中查询一下Excel文件的时候出现问题:
SELECT *  FROM OPENROWSET( 'MICROSOFT.JET.OLEDB.4.0','Excel 8.0;IMEX=1;HDR=YES;DATABASE=D:\a.xls',[sheet1$])
    结果提示:
    SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'Ad Hoc Distributed Queries'。有关启用 'Ad Hoc Distributed Queries' 的详细信息,请参阅 SQL Server 联机丛书中的 "外围应用配置器"。
查询相关资料,找到解决方法:

    启用Ad Hoc Distributed Queries:
exec sp_configure 'show advanced options',1
reconfigure
exec sp_configure 'Ad Hoc Distributed Queries',1
reconfigure
    使用完成后,关闭Ad Hoc Distributed Queries:
exec sp_configure 'Ad Hoc Distributed Queries',0
reconfigure
exec sp_configure 'show advanced options',0
reconfigure


--查询示例
select * from openrowset('SQLOLEDB' , 'sql服务器名' ; '用户名' ; '密码' , 数据库名.dbo.表名)
分享到:
评论

相关推荐

    启用Ad Hoc Distributed Queries的方法

    在描述中提到的问题是,当你尝试使用`OpenRowset`或`OpenDataSource`这两个函数来执行分布式查询时,系统会阻止这些操作,提示"Ad Hoc Distributed Queries"组件已被关闭。这是因为这些函数允许直接从其他数据源(如...

    SQL SERVER连接oracle数据库几种方法

    在 SQL Server 中,默认情况下,Ad Hoc Distributed Queries 组件的访问是被禁止的。这是为了提高服务器的安全性。然而,我们可以通过启用 Ad Hoc Distributed Queries 来解决这个问题。下面是一个示例代码: ```...

    SQL语句实现跨Sql server数据库操作实例

    #### 配置AdHoc Distributed Queries 为了能够在SQL Server中使用`OPENQUERY`或`OPENDATASOURCE`等功能来执行跨服务器查询,需要确保SQL Server实例允许执行Ad Hoc分布式查询。这可以通过修改`...

    【SQL Server技巧篇】如何用Transact-SQL脚本语言导入Excel表

    1. **开启Ad Hoc Distributed Queries**:这是SQL Server允许执行跨服务器查询的配置选项,需要通过执行以下T-SQL命令开启: ``` sp_configure 'show advanced options',1; RECONFIGURE; sp_configure 'Ad Hoc ...

    Office数据库升迁 Access 导入 SQL Server

    SQL Server blocked access to STATEMENT 'OpenRowset/OpenDatasource' of component 'Ad Hoc Distributed Queries' because this component is turned off as part of the security configuration for this server....

    Access导入到SQL Server数据库中的三种方法.docx

    SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。 系统管理员可以通过使用 sp_configure 启用 'Ad ...

    将Excel导入数据库

    当尝试通过SQL Server导入Excel数据时,可能会遇到以下错误提示:“SQL Server阻止了对组件'Ad Hoc Distributed Queries'的STATEMENT'OpenRowset/OpenDatasource'的访问。”这是因为SQL Server默认情况下出于安全...

    跨服务器复制SQL表中数据 跨服务器复制SQL表中数据

    在进行跨服务器复制之前,需要确保当前的SQL Server实例支持Ad Hoc Distributed Queries(即即席分布式查询)。这一特性允许SQL Server执行跨多个服务器的查询,是实现跨服务器复制的关键步骤之一。 **启用Ad Hoc ...

    sql2008用SQL语言 将EXCEL文件导入数据库(简单易懂

    首先,我们需要启用SQL Server的“Ad Hoc Distributed Queries”选项,这是一个允许在T-SQL语句中使用OPENROWSET或OPENDATASOURCE函数直接访问外部数据源的功能。这通常被视为一种不安全的操作,因为可能会被用来...

    跨服务器数据库访问

    在SQL Server 2005中,默认情况下,SQL Server阻止了对组件“Ad Hoc Distributed Queries”的访问。系统管理员可以通过使用sp_configure语句启用“Ad Hoc Distributed Queries”。例如: exec sp_configure 'show ...

    sqlserver 创建触发器 远程服务器相应执行SQL语句

    #### 步骤一:启用Ad Hoc Distributed Queries 若本地服务器不支持`openrowset()`函数,则需要通过执行以下SQL语句来启用: ```sql -- 启用高级选项 EXEC sp_configure 'showadvancedoptions', 1; GO RECONFIGURE;...

    SQL SERVER 与ACCESS、EXCEL的数据转换

    在处理大量数据时,使用Transact-SQL语句可以更加灵活且高效,但需要注意的是,这种方式可能会受到数据库引擎的安全限制,比如可能需要在服务器上开启对Ad Hoc Distributed Queries的支持。 总结起来,SQL SERVER、...

    SQLserver 2008(含R2)导入导出配置手册.doc

    - **Ad Hoc Distributed Queries**:这是一个重要的配置项,需要将其设置为“True”,以允许服务器执行分布式查询,这对于导入导出操作至关重要。 - **步骤**:在“外围应用配置器”对话框中找到“Ad Hoc ...

    Execl数据如何导入SQL Server 2005

    - 为了能够执行跨服务器查询,需要通过 SQL Server Management Studio 或 T-SQL 命令来启用 Ad Hoc Distributed Queries。 - SQL 代码示例: ``` EXEC sp_configure 'showadvancedoptions', 1 RECONFIGURE ...

    excel数据导入到SQL2005

    在进行Excel数据导入之前,首先需要确保SQL Server 2005支持Ad Hoc Distributed Queries功能。这是因为默认情况下该功能是禁用的,需要手动启用。具体步骤如下: ```sql -- 启用显示高级选项 EXEC sp_configure '...

    sqlserver 数据库导出excel

    - **启用 Ad Hoc Distributed Queries:** ```sql EXEC sp_configure 'AdHocDistributedQueries', 1; GO RECONFIGURE; GO ``` - **启用 xp_cmdshell:** ```sql EXEC sp_configure 'showadvancedoptions', ...

    将Sql server中数据导出到excel.docx

    但是,执行此操作时可能会遇到错误15281,表示Ad Hoc Distributed Queries被禁用,需要通过`sp_configure`存储过程开启。 方法三:使用BCP工具 BCP(Bulk Copy Program)是Sql Server提供的一个命令行工具,用于...

    将Sql server中数据导出到excel.pdf

    但请注意,这种方法可能会遇到安全性限制,如错误15281,表示'Ad Hoc Distributed Queries'功能已被禁用。要启用它,需要执行存储过程`sp_configure`: ```sql EXEC sp_configure 'show advanced options', 1; ...

    csv文件导入sqlserver 源码

    但是,这种方法可能需要在服务器上启用“Ad Hoc Distributed Queries”选项。 5. **编程接口**:如果你有编程经验,可以使用T-SQL存储过程、.NET Framework的SqlBulkCopy类或者Python的pandas库等工具,编写自定义...

Global site tag (gtag.js) - Google Analytics