ad hoc distributed queries (サーバー構成オプション)
適用対象:SQL Server
SQL Server の既定では、OPENROWSET および OPENDATASOURCE を使用したアドホックな分散クエリは実行できません。 このオプションを 1 に設定すると、 SQL Server でアドホック アクセスを実行できます。 このオプションを設定しなかった場合または 0 に設定した場合は、 SQL Server でアドホック アクセスを実行できません。
アドホック分散クエリの実行時には、OLE DB を使用するリモート データ ソースへの接続に OPENROWSET 関数および OPENDATASOURCE 関数が使用されます。 OPENROWSET 関数および OPENDATASOURCE 関数は、アクセス頻度の低い OLE DB データ ソースを参照する目的のみに使用してください。 何度もアクセスするデータ ソースに対しては、リンク サーバーを定義してください。
アドホック名を使用できるようにすると、 SQL Server への認証済みログインであればプロバイダーにアクセスできるようになります。 SQL Server の管理者は、ローカル ログインからアクセスされても安全なプロバイダーに対してのみ、この機能を有効にしてください。
解説
アドホック分散クエリを無効にしてアドホック接続を作成しようとすると、次のエラーが表示されます。
Msg 7415, Level 16, State 1, Line 1
Ad hoc access to OLE DB provider 'Microsoft.ACE.OLEDB.12.0' has been denied. You must access this provider through a linked server.
例
次の例では、アドホック分散クエリを有効にし、 Seattle1
関数を使用して OPENROWSET
という名前のサーバーにクエリを実行します。
sp_configure 'show advanced options', 1;
RECONFIGURE;
GO
sp_configure 'Ad Hoc Distributed Queries', 1;
RECONFIGURE;
GO
SELECT a.*
FROM OPENROWSET('MSOLEDBSQL', 'Server=Seattle1;Trusted_Connection=yes;',
'SELECT GroupName, Name, DepartmentID
FROM AdventureWorks2022.HumanResources.Department
ORDER BY GroupName, Name') AS a;
GO
Azure SQL Database と Azure SQL Managed Instance
「機能の比較: Azure SQL Database と Azure SQL Managed Instance」を参照してください。
関連項目
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示