Bagikan melalui


Aksesor dan Set Baris

Untuk mengatur dan mengambil data, Templat OLE DB menggunakan aksesor dan set baris melalui kelas CAccessorRowset . Kelas ini dapat menangani beberapa aksesor dari berbagai jenis.

Tipe Aksesor

Semua aksesor berasal dari CAccessorBase. CAccessorBase menyediakan pengikatan parameter dan kolom.

Gambar berikut menunjukkan jenis aksesor.

Diagram yang memperlihatkan hubungan antara jenis Accessor.
Kelas Aksesor

  • CAccessor Gunakan aksesor ini saat Anda mengetahui struktur sumber database pada waktu desain. CAccessor secara statis mengikat rekaman database, yang berisi buffer, ke sumber data.

  • CDynamicAccessor Gunakan aksesor ini saat Anda tidak mengetahui struktur database pada waktu desain. CDynamicAccessorIColumnsInfo::GetColumnInfo panggilan untuk mendapatkan informasi kolom database. Ini membuat dan mengelola aksesor dan buffer.

  • CDynamicParameterAccessor Gunakan aksesor ini untuk menangani jenis perintah yang tidak diketahui. Saat Anda menyiapkan perintah, CDynamicParameterAccessor bisa mendapatkan informasi parameter dari ICommandWithParameters antarmuka, jika penyedia mendukung ICommandWithParameters.

  • CDynamicStringAccessor, CDynamicStringAccessorA, dan CDynamicStringAccessorW Gunakan kelas ini ketika Anda tidak memiliki pengetahuan tentang skema database. CDynamicStringAccessorA mengambil data sebagai string ANSI; CDynamicStringAccessorW mengambil data sebagai string Unicode.

  • CManualAccessor Dengan kelas ini, Anda dapat menggunakan jenis data apa pun yang Anda inginkan jika penyedia dapat mengonversi jenisnya. Ini menangani kolom hasil dan parameter perintah.

Tabel berikut ini meringkas dukungan dalam jenis aksesor Templat OLE DB.

Jenis aksesor Dinamis Menangani param Buffer Beberapa aksesor
CAccessor Tidak Ya Pengguna Ya
CDynamicAccessor Ya Tidak Templat OLE DB Tidak
CDynamicParameterAccessor Ya Ya Templat OLE DB Tidak
CDynamicStringAccessor[A,W] Ya Tidak Templat OLE DB Tidak
CManualAccessor Ya Ya Pengguna Ya

Jenis Set Baris

Templat OLE DB mendukung tiga jenis set baris (lihat gambar sebelumnya): set baris tunggal (diimplementasikan oleh CRowset), set baris massal (diimplementasikan oleh CBulkRowset), dan kumpulan baris array (diimplementasikan oleh CArrayRowset). Satu set baris mengambil handel baris tunggal saat MoveNext dipanggil. Himpunan baris massal dapat mengambil beberapa handel baris. Kumpulan baris array adalah set baris yang dapat diakses menggunakan sintaks array.

Gambar berikut menunjukkan jenis set baris.

Diagram yang memperlihatkan hubungan antara jenis Set Baris.
Kelas Set Baris

Himpunan baris skema tidak mengakses data di penyimpanan data tetapi sebaliknya mengakses informasi tentang penyimpanan data, yang disebut metadata. Kumpulan baris skema biasanya digunakan dalam situasi di mana struktur database tidak diketahui pada waktu kompilasi dan harus diperoleh pada waktu proses.

Lihat juga

Templat Konsumen OLE DB