Membuat Konsumen Tanpa Menggunakan Wizard
Contoh berikut mengasumsikan bahwa Anda menambahkan dukungan konsumen OLE DB ke proyek ATL yang ada. Jika Anda ingin menambahkan dukungan konsumen OLE DB ke aplikasi MFC, Anda harus menjalankan Wizard Aplikasi MFC, yang membuat semua dukungan yang diperlukan dan memanggil rutinitas MFC yang diperlukan untuk menjalankan aplikasi.
Untuk menambahkan dukungan konsumen OLE DB tanpa menggunakan Wizard Konsumen ATL OLE DB:
Dalam file pch.h Anda, tambahkan pernyataan berikut
#include
:#include <atlbase.h> #include <atldbcli.h> #include <atldbsch.h> // if you are using schema templates
Secara terprogram, konsumen biasanya melakukan urutan operasi berikut:
Buat kelas rekaman pengguna yang mengikat kolom ke variabel lokal. Dalam contoh ini,
CMyTableNameAccessor
adalah kelas rekaman pengguna (lihat Catatan Pengguna). Kelas ini berisi peta kolom dan peta parameter. Nyatakan anggota data di kelas rekaman pengguna untuk setiap bidang yang Anda tentukan di peta kolom Anda; untuk setiap anggota data ini, juga mendeklarasikan anggota data status dan anggota data panjang. Untuk informasi selengkapnya, lihat Anggota Data Status Bidang di Aksesor yang Dihasilkan Wizard.Catatan
Jika Anda menulis konsumen Anda sendiri, variabel data harus datang sebelum variabel status dan panjang.
Membuat instans sumber data dan sesi. Tentukan jenis aksesor dan set baris apa yang akan digunakan lalu buat instans set baris menggunakan CCommand atau CTable:
CDataSource ds; CSession ss; class CMyTableName : public CCommand<CAccessor<CMyTableNameAccessor>>
Panggil
CoInitialize
untuk menginisialisasi COM. Ini disebut dalam kode utama. Contohnya:HRESULT hr = CoInitialize(NULL);
Panggil CDataSource::Open atau salah satu variasinya.
Buka koneksi ke sumber data, buka sesi, dan buka dan inisialisasi set baris (dan jika perintah, jalankan juga):
hr = ds.Open(); hr = ss.Open(ds); hr = rs.Open(); // (Open also executes the command)
Secara opsional, atur properti set baris menggunakan
CDBPropSet::AddProperty
dan teruskan sebagai parameter kers.Open
. Untuk contoh bagaimana hal ini dilakukan, lihatGetRowsetProperties
di Metode Yang Dihasilkan Wizard Konsumen.Anda sekarang dapat menggunakan set baris untuk mengambil/memanipulasi data.
Setelah aplikasi Anda selesai, tutup koneksi, sesi, dan set baris:
rs.Close(); ss.Close(); ds.Close();
Jika Anda menggunakan perintah, Anda mungkin ingin memanggil
ReleaseCommand
setelahClose
. Contoh kode di CCommand::Close menunjukkan cara memanggilClose
danReleaseCommand
.Panggil
CoUnInitialize
untuk membatalkan menginisialisasi COM. Ini disebut dalam kode utama.CoUninitialize();
Baca juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk