web-dev-qa-db-fra.com

Comment activer les requêtes distribuées ad hoc

Lorsque j'exécute une requête avec OPENROWSET dans SQL Server 2000, cela fonctionne.

Mais la même requête dans SQL Server 2008 génère l'erreur suivante:

SQL Server a bloqué l'accès à STATEMENT 'OpenRowset/OpenDatasource' du composant 'Ad Hoc Distributed Queries', car ce composant est désactivé dans le cadre de la configuration de la sécurité pour ce serveur. Un administrateur système peut activer l'utilisation de 'Requêtes distribuées ad hoc' à l'aide de sp_configure

94
emergency coder

La commande suivante peut vous aider.

EXEC sp_configure 'show advanced options', 1
RECONFIGURE
GO
EXEC sp_configure 'ad hoc distributed queries', 1
RECONFIGURE
GO
203
Hasib Hasan Arnab

Vous pouvez vérifier la commande suivante

sp_configure 'show advanced options', 1;
RECONFIGURE;
GO  --Added        
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

Ou ceci lien vers la documentation

13
user1977878

Si les mises à jour ad hoc du catalogue système sont "non prises en charge" ou si vous obtenez un "Msg 5808", vous devrez configurer avec un remplacement comme suit:

EXEC sp_configure 'show advanced options', 1
RECONFIGURE with override
GO
EXEC sp_configure 'ad hoc distributed queries', 1
RECONFIGURE with override
GO
1
Robino
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Ad Hoc Distributed Queries', 1;
GO
RECONFIGURE;
GO
1
user2129794