跨服务器查询导入数据

错误:
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"。

  SQL Server 2008的外围应用配置工具在哪里?

  图一

  这将显示视图界面对话框,它将为你提供一个可以配置实例的所有可用下拉界面。

  SQL Server 2008的外围应用配置工具在哪里?


---查询语句
Select * From OPENDATASOURCE(
         'SQLOLEDB',
         'Data Source=<serverName>;User ID=sa;Password=123456'
         ).[database].[dbo].[tablenameL]
        

原文地址:https://www.cnblogs.com/zl253539819/p/2975835.html