Share via


Ad Hoc Distributed Queries (Option)

Standardmäßig ist es in SQL Server nicht zulässig, dass für verteilte Ad-hoc-Abfragen OPENROWSET und OPENDATASOURCE verwendet werden. Wird diese Option auf 1 festgelegt, ist in SQL Server der Ad-hoc-Zugriff zulässig. Wenn diese Option nicht festgelegt oder auf 0 festgelegt wird, ist in SQL Server kein Ad-hoc-Zugriff zulässig.

Ad-hoc verteilte Abfragen verwenden die OPENROWSET- und OPENDATASOURCE-Funktionen, um eine Verbindung mit Remotedatenquellen herzustellen, die OLE DB verwenden. OPENROWSET und OPENDATASOURCE sollten nur für Verweise auf OLE DB-Datenquellen verwendet werden, auf die selten zugegriffen wird. Sie sollten einen Verbindungsserver für Datenquellen definieren, auf die mehr als nur wenige Male zugegriffen wird.

SicherheitshinweisSicherheitshinweis

Das Aktivieren der Verwendung von Ad-hoc-Namen bedeutet, dass mit jeder authentifizierten Anmeldung bei SQL Server auf den Anbieter zugegriffen werden kann. SQL Server-Administratoren sollten dieses Feature für Anbieter aktivieren, auf die von jeder lokalen Anmeldung sicher zugegriffen werden kann. Weitere Informationen finden Sie unter der Option DisallowAdhocAccess unter Zugreifen auf externe Daten.

Beispiele

Im folgenden Beispiel werden verteilte Ad-hoc-Abfragen aktiviert. Danach wird der Server Seattle1 mithilfe der OPENROWSET-Funktion abgefragt.

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 AdventureWorks.HumanResources.Department
      ORDER BY GroupName, Name') AS a;
GO