Condividi tramite


Opzione di configurazione del server ad hoc distributed queries

Per impostazione predefinita, SQL Server non consente query distribuite ad hoc usando OPENROWSET e OPENDATASOURCE. Quando questa opzione è impostata su 1, in SQL Server è possibile l'accesso ad hoc. Quando questa opzione non è impostata o è impostata su 0, SQL Server non consente l'accesso ad hoc.

Le query distribuite ad hoc utilizzano le funzioni OPENROWSET e OPENDATASOURCE per connettersi alle origini dei dati remote che utilizzano OLE DB. È consigliabile utilizzare le funzioni OPENROWSET e OPENDATASOURCE solo per fare riferimento a origini dei dati OLE DB a cui si accede raramente. Per le origini dei dati a cui è necessario accedere con maggiore frequenza, è possibile definire un server collegato.

Importante

Se si consente l'uso dei nomi ad hoc, tutti gli account di accesso a SQL Server autenticati potranno accedere al provider. SQL Server richiede che gli amministratori abilitino questa funzionalità per i provider a cui è possibile accedere in modo sicuro tramite qualsiasi account di accesso locale.

Osservazioni

Se si prova a eseguire una connessione ad hoc con l'opzione Query distribuite ad hoc abilitate non abilitata, viene restituito l'errore: Messaggio 7415, livello 16, stato 1, riga 1

L'accesso ad hoc al provider OLE DB "Microsoft.ACE.OLEDB.12.0" è stato negato. Accedere al provider tramite un server collegato.

Esempi

Nell'esempio seguente viene abilitata l'opzione ad hoc distributed queries e, successivamente, viene eseguita una query su un server denominato Seattle1 utilizzando la funzione 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  

Vedere anche

Opzioni di configurazione del server (SQL Server)
Server collegati (Motore di database)
OPENROWSET (Transact-SQL)
OPENDATASOURCE (Transact-SQL)
sp_addlinkedserver (Transact-SQL)