次の方法で共有


アドホック分散クエリサーバー構成オプション

既定では、SQL Server では OPENROWSET と OPENDATASOURCE を使用したアドホック分散クエリは許可されません。 このオプションを 1 に設定すると、SQL Server はアドホック アクセスを許可します。 このオプションが設定されていないか、0 に設定されている場合、SQL Server はアドホック アクセスを許可しません。

アドホック分散クエリでは、OPENROWSET 関数と OPENDATASOURCE 関数を使用して、OLE DB を使用するリモート データ ソースに接続します。 OPENROWSET と OPENDATASOURCE は、アクセス頻度の低い OLE DB データ ソースを参照する場合にのみ使用してください。 複数回アクセスされるデータ ソースについては、リンク サーバーを定義します。

重要

アドホック名の使用を有効にすると、SQL Server への認証されたログインがプロバイダーにアクセスできることを意味します。 SQL Server 管理者は、ローカル ログインによって安全にアクセスできるプロバイダーに対して、この機能を有効にする必要があります。

注釈

アドホック分散クエリが有効になっていないアドホック接続を試行すると、エラーが発生します。メッセージ 7415、レベル 16、状態 1、行 1

OLE DB プロバイダー 'Microsoft.ACE.OLEDB.12.0' へのアドホック アクセスが拒否されました。 リンク サーバー経由でこのプロバイダーにアクセスしてください。

例示

次の例では、アドホック分散クエリを有効にし、OPENROWSET関数を使用して Seattle1 という名前のサーバーに対してクエリを実行します。

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)
リンク サーバー (データベース エンジン)
OPENROWSET (Transact-SQL)
OPENDATASOURCE (Transact-SQL)
sp_addlinkedserver (Transact-SQL)