Bagikan melalui


Menggunakan ADO untuk Menjalankan Kueri SQLXML 4.0

Berlaku untuk:SQL ServerAzure SQL Database

Dalam versi SQLXML sebelumnya, eksekusi kueri berbasis HTTP didukung menggunakan direktori virtual IIS SQLXML dan filter ISAPI SQLXML. Di SQLXML 4.0, komponen-komponen ini telah dihapus karena fungsionalitas serupa dan tumpang tindih disediakan dengan layanan Web XML asli yang dimulai di SQL Server 2005 (9.x).

Sebagai alternatif, Anda dapat menjalankan kueri dan menggunakan SQLXML 4.0 dengan aplikasi berbasis COM Anda, dengan memanfaatkan ekstensi SQLXML ke ActiveX Data Objects (ADO) yang pertama kali diperkenalkan di Microsoft Data Access Components (MDAC) 2.6 dan yang lebih baru.

Topik ini menunjukkan penggunaan SQLXML dan ADO sebagai bagian dari aplikasi Visual Basic Scripting Edition (VBScript) (skrip dengan ekstensi nama file .vbs). Ini menyediakan prosedur penyiapan awal untuk membantu Anda membuat ulang dan menguji sampel kueri dalam dokumentasi SQLXML 4.0.

Membuat Skrip Pengujian SQLXML 4.0

Dalam prosedur ini, Anda membuat file VBScript (.vbs), Sqlxml4test.vbs, yang dapat digunakan untuk menjalankan kueri SQLXML dengan memanfaatkan ekstensi SQLXML ADO di ADO 2.6 dan yang lebih baru.

Untuk membuat penguji kueri SQLXML 4.0 menggunakan ADO (VBScript).

  1. Salin kode di bawah ini dan tempelkan ke dalam file teks. Simpan file sebagai Sqlxml4test.vbs.

    WScript.Echo "Query process may take a few seconds to complete. Please be patient."  
    
    ' Note that for SQL Server Native Client to be used as the data provider,  
    ' it needs to be installed on the client computer first. Also, SQLXML extensions   
    ' for ADO are used and available in MDAC 2.6 or later.  
    
    'Set script variables.  
    inputFile = "@@FILE_NAME@@"  
    strServer = "@@SERVER_NAME@@"  
    strDatabase = "@@DATABASE_NAME@@"  
    dbGuid = "{5d531cb2-e6ed-11d2-b252-00c04f681b71}"  
    
    ' Establish ADO connection to SQL Server and   
    ' create an instance of the ADO Command object.  
    Set conn = CreateObject("ADODB.Connection")  
    Set cmd = CreateObject("ADODB.Command")  
    conn.Open "Provider=SQLXMLOLEDB.4.0;Data Provider=SQLNCLI11;Server=" & strServer & _  
              ";Database=" & strDatabase & ";Integrated Security=SSPI"  
    Set cmd.ActiveConnection = conn  
    
    ' Create the input stream as an instance of the ADO Stream object.  
    Set inStream = CreateObject("ADODB.Stream")  
    inStream.Open  
    inStream.Charset = "utf-8"  
    inStream.LoadFromFile inputFile  
    
    ' Set ADO Command instance to use input stream.  
    Set cmd.CommandStream = inStream  
    
    ' Set the command dialect.  
    cmd.Dialect = dbGuid  
    
    ' Set a second ADO Stream instance for use as a results stream.   
    Set outStream = CreateObject("ADODB.Stream")  
    outStream.Open  
    
    ' Set dynamic properties used by the SQLXML ADO command instance.   
    cmd.Properties("XML Root").Value = "ROOT"  
    cmd.Properties("Output Encoding").Value = "UTF-8"  
    
    ' Connect the results stream to the command instance and execute the command.  
    cmd.Properties("Output Stream").Value = outStream  
    cmd.Execute , , 1024  
    
    ' Echo cropped/partial results to console.  
    WScript.Echo Left(outStream.ReadText, 1023)  
    
    inStream.Close  
    outStream.Close  
    
  2. Perbarui nilai skrip berikut untuk sampel yang coba Anda uji dan lingkungan pengujian Anda.

    • Temukan @@FILE_NAME@@ dan ganti dengan nama file templat Anda.

    • Temukan @@SERVER_NAME@@ dan ganti dengan nama instans SQL Server Anda (misalnya, (local) jika SQL Server berjalan secara lokal).

    • Temukan "@@DATABASE_NAME@@" dan ganti dengan nama database (misalnya, atau AdventureWorks2022tempdb).

    Perbarui nilai lain jika disebutkan dalam instruksi tertentu untuk contoh yang Anda coba buat ulang secara lokal di komputer Anda.

  3. Simpan file dan tutup.

  4. Verifikasi bahwa Anda telah membuat file tambahan apa pun, seperti templat XML atau skema yang merupakan bagian dari sampel yang Anda coba buat ulang secara lokal di komputer Anda. File-file ini harus terletak di direktori yang sama di mana Anda telah menyimpan file skrip pengujian (Sqlxml4test.vbs).

  5. Ikuti instruksi di bagian berikutnya tentang cara menggunakan skrip pengujian SQLXML 4.0.

Menggunakan Skrip Pengujian SQLXML 4.0

Prosedur berikut menjelaskan cara menggunakan file Sqlxml4test.vbs untuk menguji contoh kueri yang disediakan dalam dokumentasi ini.

Untuk menggunakan penguji kueri SQLXML 4.0

  1. Verifikasi bahwa SQL Server Native Client diinstal, sebagai berikut:

    1. Dari menu Mulai , arahkan ke Pengaturan, lalu klik Panel Kontrol.

    2. Di Panel Kontrol, buka Tambahkan atau Hapus Program

    3. Dalam daftar program yang saat ini diinstal, verifikasi bahwa Klien Asli Microsoft SQL Server muncul dalam daftar.

      Catatan

      Jika Anda perlu menginstal SQL Server Native Client, lihat Menginstal SQL Server Native Client.

  2. Verifikasi bahwa versi MDAC yang diinstal untuk komputer klien adalah 2.6 atau yang lebih baru. Jika Anda perlu memverifikasi informasi versi MDAC, Anda dapat menggunakan alat Pemeriksa Komponen MDAC, yang disediakan sebagai unduhan gratis dari situs Web Microsoft, http://www.microsoft.com. Untuk informasi selengkapnya, cari di "Pemeriksa Komponen MDAC" di situs Web Microsoft.

  3. Jalankan skrip.

    Anda dapat menjalankan file VBScript baik di baris perintah menggunakan Cscript.exe atau dengan mengklik dua kali file Sqlxml4test.vbs untuk memanggil Host Skrip Windows (WScript.exe).

    Saat dijalankan, skrip harus menampilkan pesan untuk memberi tahu Anda bahwa skrip mungkin membutuhkan waktu beberapa saat untuk dijalankan sebelum mengembalikan dan menampilkan hasil kueri sebagai output skrip. Saat output muncul, bandingkan kontennya dengan hasil yang diharapkan untuk sampel.