Поделиться через


Параметр конфигурации сервера «ad hoc distributed queries»

По умолчанию SQL Server не разрешает нерегламентированные распределенные запросы, использующие операторы OPENROWSET и OPENDATASOURCE. Если этот параметр равен 1, SQL Server допускает выполнение нерегламентированных распределенных запросов. Если этот параметр не задан или равен 0, SQL Server не разрешает нерегламентированный доступ.

В нерегламентированных распределенных запросах с помощью функций OPENROWSET и OPENDATASOURCE осуществляется подключение к удаленным источникам данных, использующим OLE DB. Функции OPENROWSET и OPENDATASOURCE должны использоваться с теми источниками данных OLE DB, обращения к которым происходят нечасто. Для источников данных, к которым обращение производится более чем несколько раз, определите связанный сервер.

Важно!

Разрешение использования нерегламентированных имен означает, что любой пользователь, прошедший проверку подлинности при входе в SQL Server , будет иметь доступ к поставщику. SQL Server следует включить эту функцию для поставщиков, любой локальный доступ к которым не представляет опасности.

Remarks

Попытка установки нерегламентированного соединения без включенной функции Нерегламентированные распределенные запросы приведет к ошибке. Сообщение 7415, уровень 16, состояние 1, строка 1

Нерегламентированный доступ к поставщику OLE DB «Microsoft.ACE.OLEDB.12.0» запрещен. К данному поставщику доступ необходимо производить через связанный сервер.

Примеры

Следующий пример включает распределенные нерегламентированные запросы и выполняет запрос к серверу Seattle1 с использованием функции OPENROWSET .

sp_configure 'show advanced options', 1;  
RECONFIGURE;  
sp_configure 'Ad Hoc Distributed Queries', 1;  
RECONFIGURE;  
GO  
  
SELECT a.*  
FROM OPENROWSET('SQLNCLI', 'Server=Seattle1;Trusted_Connection=yes;',  
     'SELECT GroupName, Name, DepartmentID  
      FROM AdventureWorks2012.HumanResources.Department  
      ORDER BY GroupName, Name') AS a;  
GO  

См. также:

Параметры конфигурации сервера (SQL Server)
Связанные серверы (компонент Database Engine)
OPENROWSET (Transact-SQL)
OPENDATASOURCE (Transact-SQL)
sp_addlinkedserver (Transact-SQL)