解决SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource&
Posted cat糯米团
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource&相关的知识,希望对你有一定的参考价值。
根据需要进行asp.net的数据导入导出,结果报以下错:
mark-1:
【报错】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组件,在sql查询编辑器中执行如下语句:
1 --配置权限 2 EXEC sp_configure \'show advanced options\', 1; 3 GO 4 RECONFIGURE; 5 GO 6 EXEC sp_configure \'Ad Hoc Distributed Queries\', 1; 7 GO 8 RECONFIGURE; 9 GO
执行结果:
关闭Ad Hoc Distributed Queries组件,在sql查询编辑器中执行如下语句:
1 exec sp_configure \'Ad Hoc Distributed Queries\',0; 2 go 3 reconfigure; 4 go 5 exec sp_configure \'show advanced options\',0; 6 go 7 reconfigure; 8 go
mark-2:
【执行】
1 --将excel数据导入数据库 2 select * into sheet from OPENROWSET(\'MICROSOFT.JET.OLEDB.4.0\',\'Excel 5.0;HDR=YES;DATABASE=c:\\33.xlsx\',sheet1$)
【报错】
1 链接服务器"(null)"的 OLE DB 访问接口 "MICROSOFT.JET.OLEDB.4.0" 返回了消息 "未指定的错误"。 2 消息 7303,级别 16,状态 1,第 1 行 3 无法初始化链接服务器 "(null)" 的 OLE DB 访问接口 "MICROSOFT.JET.OLEDB.4.0" 的数据源对象。
【百度的解决办法】
发现根本原因了:management studio--->服务器对象-->链接服务器-->Microsoft.Jet.OLEDB.4.0-->右键属性-->访问接口选项:全都不选or ACE的 那个
将SQL Server(MSSQLSERVER)和SQL Full-Filter Deamon Launcher(MSSQLSERVER)两个服务的登录身份改为LocalSystem (这里可以创建一个账号如:Admin ,然后指定账号用这个)
以上是关于解决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' 的
SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource'