Cara menggunakan ADOX untuk membuat query SQL pass-through dalam akses

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 304323 - Melihat produk di mana artikel ini berlaku.
Moderat: Memerlukan dasar makro, coding, dan interoperabilitas keterampilan.

Artikel ini hanya berlaku untuk Microsoft Access database (.accdb dan .mdb).
Perbesar semua | Perkecil semua

RINGKASAN

Artikel ini menunjukkan kepada Anda bagaimana untuk membuat pass-through SQL permintaan di Microsoft Visual Basic for Applications (VBA) dengan Microsoft ActiveX Data Objects (ADO).

INFORMASI LEBIH LANJUT

Anda dapat menulis fungsi dalam Visual Basic untuk aplikasi yang menciptakan permintaan pass-through SQL. Query SQL pass-through terdiri dari pernyataan SQL dan rangkaian sambungan. Ketika Anda menjalankan query, ia akan mengirimkan perintah langsung ke database server untuk diproses. Ini akan menghapus overhead dari Microsoft Jet database engine.

Dengan akses Data Model objek (DAO), Anda dapat menggunakan SQL query pass-through untuk meningkatkan kinerja ketika Anda mengakses data eksternal. Dengan ADO, Anda dapat menggunakan Microsoft OLE penyedia DB untuk SQL Server untuk langsung mengakses SQL Server tanpa melebihkan Microsoft Jet atau ODBC. Anda juga dapat menggunakan Microsoft OLE penyedia DB untuk ODBC untuk mengakses data dalam sumber data ODBC.

Meskipun Anda tidak lagi harus membuat pass-through SQL queries dalam Anda Microsoft Jet database untuk meningkatkan performa, Anda masih dapat melakukannya dengan menggunakan ADOX dan penyedia Jet. Kode berikut menunjukkan kepada Anda bagaimana untuk membuat SQL pass-through permintaan.

CATATAN: Kode contoh dalam artikel ini menggunakan ADO dan ActiveX Data Objek ekstensi untuk Data definisi bahasa dan keamanan (ADOX). Untuk ini kode untuk menjalankan dengan benar, Anda harus meng-klik Referensi pada Alat menu di Editor Visual Basic dan memastikan bahwa berikut dua referensi yang dipilih:
Objek Microsoft ActiveX Data 2,1 perpustakaan
Microsoft ADO Ext. 2.6 untuk DDL dan keamanan
Microsoft menyediakan contoh pemrograman hanya sebagai ilustrasi, tanpa jaminan apa pun baik tersurat maupun tersirat. Termasuk, namun tidak terbatas pada, jaminan tersirat mengenai kelayakan untuk diperdagangkan atau kesesuaian untuk keperluan tertentu. Artikel ini mengasumsikan bahwa Anda telah terbiasa dengan bahasa pemrograman yang ditunjukkan dan dengan alat yang digunakan untuk membuat dan mendebug prosedur. Teknisi dukungan Microsoft dapat membantu menjelaskan fungsionalitas prosedur tertentu, namun mereka tidak akan memodifikasi contoh untuk memberikan fungsionalitas tambahan atau menyusun prosedur untuk memenuhi persyaratan khusus Anda. Untuk membuat query SQL pass-through dalam kode, ikuti langkah-langkah berikut:
  1. Membuka sampel Northwind database.
  2. Membuat modul baru, dan kemudian ketik atau tempel berikut kode:
    Function CreateSPT(SPTQueryName As String, strSQL As String)
    
      Dim cat As ADOX.Catalog
      Dim cmd As ADODB.Command
    
      Set cat = New ADOX.Catalog
      Set cmd = New ADODB.Command
    
      cat.ActiveConnection = CurrentProject.Connection
    
      Set cmd.ActiveConnection = cat.ActiveConnection
    
      cmd.CommandText = strSQL
      cmd.Properties("Jet OLEDB:ODBC Pass-Through Statement") = True
      
     'Modify the following connection string to reference an existing DSN for 
     'the sample SQL Server PUBS database.
    
      cmd.Properties _
         ("Jet OLEDB:Pass Through Query Connect String") = _
           "ODBC;DSN=myDSN;database=pubs;UID=sa;PWD=;"
      cat.Procedures.Append SPTQueryName, cmd
    
      Set cat = Nothing
      Set cmd = Nothing
    
    End Function
    					
  3. Untuk menguji fungsi ini, ketik baris berikut di Segera jendela, dan kemudian tekan ENTER:
    ?CreateSPT ("MySptQuery", "Pilih * dari penulis")

REFERENSI

Untuk informasi lebih lanjut tentang Microsoft OLE DB properti, mengunjungi perpustakaan MSDN pada Website Microsoft berikut:
http://msdn2.Microsoft.com/en-us/library/default.aspx
Pada pohon isi di sisi kiri dari perpustakaan MSDN, People untuk topik bantuan berikut:
  \Data Access
    \Microsoft Data Access Components
      \ADO
        \SDK Documentation
          \Microsoft ActiveX Data Objects (ADO)
            \ADO Programmer's Guide
              \Section V: Appendixes
                \Appendix A: Providers    
                  \Microsoft OLE DB Provider for Microsoft Jet
				
Note This is a "FAST PUBLISH" article created directly from within the Microsoft support organization. The information contained herein is provided as-is in response to emerging issues. As a result of the speed in making it available, the materials may include typographical errors and may be revised at any time without notice. See Terms of Use for other considerations.

Properti

ID Artikel: 304323 - Kajian Terakhir: 24 September 2011 - Revisi: 2.0
Berlaku bagi:
  • Microsoft Office Access 2007
  • Microsoft Office Access 2003
  • Microsoft Access 2002 Standard Edition
Kata kunci: 
kbquery kbvba kbado kbhowto kbmt KB304323 KbMtid
Penerjemahan Mesin
PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini:304323

Berikan Masukan

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com