错误:
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'
--关闭'Ad Hoc Distributed Queries'
EXEC SP_CONFIGURE 'show advanced options',0
RECONFIGURE
EXEC SP_CONFIGURE 'Ad Hoc Distributed Queries',0
RECONFIGURE
解决方案二:
首先,右键单击你想要在SSMS中配置的实例名并从如下显示的上下文菜单中选择"Facets"。
图一
这将显示视图界面对话框,它将为你提供一个可以配置实例的所有可用下拉界面。
---查询语句
Select * From OPENDATASOURCE(
'SQLOLEDB',
'Data Source=<serverName>;User ID=sa;Password=123456'
).[database].[dbo].[tablenameL]