Bagikan melalui


Opsi Konfigurasi Server ad-hoc kueri terdistribusi

Secara default, SQL Server tidak mengizinkan kueri terdistribusi ad hoc menggunakan OPENROWSET dan OPENDATASOURCE. Ketika opsi ini diatur ke 1, SQL Server mengizinkan akses ad hoc. Ketika opsi ini tidak diatur atau diatur ke 0, SQL Server tidak mengizinkan akses ad hoc.

Kueri terdistribusi ad hoc menggunakan fungsi OPENROWSET dan OPENDATASOURCE untuk menyambungkan ke sumber data jarak jauh yang menggunakan OLE DB. OPENROWSET dan OPENDATASOURCE harus digunakan hanya untuk mereferensikan sumber data OLE DB yang jarang diakses. Untuk sumber data apa pun yang akan diakses lebih dari beberapa kali, tentukan server tertaut.

Penting

Mengaktifkan penggunaan nama ad hoc berarti bahwa setiap login terautentikasi ke SQL Server dapat mengakses penyedia. Administrator SQL Server harus mengaktifkan fitur ini untuk penyedia yang aman untuk diakses oleh login lokal apa pun.

Komentar

Mencoba membuat koneksi ad hoc dengan Kueri Terdistribusi Ad Hoc tidak diaktifkan menghasilkan kesalahan: Msg 7415, Tingkat 16, Status 1, Baris 1

Akses ad hoc ke penyedia OLE DB 'Microsoft.ACE.OLEDB.12.0' telah ditolak. Anda harus mengakses penyedia ini melalui server tertaut.

Contoh

Contoh berikut memungkinkan kueri terdistribusi ad hoc lalu mengkueri server bernama Seattle1 menggunakan fungsi .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  

Lihat Juga

Opsi Konfigurasi Server (SQL Server)
Server Tertaut (Mesin Database)
OPENROWSET (T-SQL)
OPENDATASOURCE (Transact-SQL)
sp_addlinkedserver (T-SQL)