Bagikan melalui


Kelas CDataSource

Sesuai dengan objek sumber data OLE DB, yang mewakili koneksi melalui penyedia ke sumber data.

Sintaks

class CDataSource

Persyaratan

Header: atldbcli.h

Anggota

Metode

Nama Deskripsi
Tutup Menutup koneksi.
GetInitializationString Mengambil string inisialisasi sumber data yang saat ini terbuka.
GetProperties Mendapatkan nilai properti yang saat ini diatur untuk sumber data yang tersambung.
Getproperty Mendapatkan nilai satu properti yang saat ini ditetapkan untuk sumber data yang tersambung.
Buka Membuat koneksi ke penyedia (sumber data) menggunakan CLSID, , ProgIDatau moniker yang CEnumerator disediakan oleh pemanggil.
OpenFromFileName Membuka sumber data dari file yang ditentukan oleh nama file yang disediakan pengguna.
OpenFromInitializationString Membuka sumber data yang ditentukan oleh string inisialisasi.
OpenWithPromptFileName Memungkinkan pengguna memilih file tautan data yang dibuat sebelumnya untuk membuka sumber data yang sesuai.
OpenWithServiceComponents Membuka objek sumber data menggunakan kotak dialog Tautan Data.

Keterangan

Satu atau beberapa sesi database dapat dibuat untuk satu koneksi. Sesi ini diwakili oleh CSession. Anda harus memanggil CDataSource::Open untuk membuka koneksi sebelum membuat sesi dengan CSession::Open.

Untuk contoh cara menggunakan CDataSource, lihat sampel CatDB .

CDataSource::Close

Menutup koneksi dengan melepaskan m_spInit penunjuk.

Sintaks

void Close() throw();

CDataSource::GetInitializationString

Mengambil string inisialisasi sumber data yang saat ini terbuka.

Sintaks

HRESULT GetInitializationString(BSTR* pInitializationString,
   bool bIncludePassword = false) throw();

Parameter

pInitializationString
[out] Penunjuk ke string inisialisasi.

bIncludePassword
[di] true jika string menyertakan kata sandi; jika tidak false.

Tampilkan Nilai

HRESULT standar.

Keterangan

String inisialisasi yang dihasilkan dapat digunakan untuk membuka kembali koneksi sumber data ini nanti.

CDataSource::GetProperties

Mengembalikan informasi properti yang diminta untuk objek sumber data yang tersambung.

Sintaks

HRESULT GetProperties(ULONG ulPropIDSets,
   constDBPROPIDSET* pPropIDSet,
   ULONG* pulPropertySets,
   DBPROPSET** ppPropsets) const throw();

Parameter

Lihat IDBProperties::GetProperties di Referensi Programmer OLE DB di Windows SDK.

Tampilkan Nilai

HRESULT standar.

Keterangan

Untuk mendapatkan satu properti, gunakan GetProperty.

CDataSource::GetProperty

Mengembalikan nilai properti tertentu untuk objek sumber data yang tersambung.

Sintaks

HRESULT GetProperty(const GUID& guid,
   DBPROPID propid,
   VARIANT* pVariant) const throw();

Parameter

Guid
[di] GUID yang mengidentifikasi kumpulan properti untuk mengembalikan properti.

propid
[di] ID Properti untuk properti yang akan dikembalikan.

pVariant
[out] Penunjuk ke varian tempat GetProperty mengembalikan nilai properti.

Tampilkan Nilai

HRESULT standar.

Keterangan

Untuk mendapatkan beberapa properti, gunakan GetProperties.

CDataSource::Open

Membuka koneksi ke sumber data menggunakan CLSID, , ProgIDatau CEnumerator moniker atau meminta pengguna dengan kotak dialog pencari lokasi.

Sintaks

HRESULT Open(const CLSID& clsid,
   DBPROPSET* pPropSet = NULL,
   ULONG nPropertySets = 1) throw();

HRESULT Open(const CLSID& clsid,
   LPCTSTR pName,
   LPCTSTR pUserName = NULL,
   LPCTSTR pPassword = NULL,
   long nInitMode = 0) throw();HRESULT Open(LPCTSTR szProgID,
   DBPROPSET* pPropSet = NULL,
   ULONG nPropertySets = 1) throw();HRESULT Open(LPCTSTR szProgID,
   LPCTSTR pName,  LPCTSTR pUserName = NULL,
   LPCTSTR pPassword = NULL,
   long nInitMode = 0) throw();

HRESULT Open(const CEnumerator& enumerator,
   DBPROPSET* pPropSet = NULL,
   ULONG nPropertySets = 1) throw();

HRESULT Open(const CEnumerator& enumerator,
   LPCTSTR pName,
   LPCTSTR pUserName = NULL,
   LPCTSTR pPassword = NULL,
   long nInitMode = 0) throw();

HRESULT Open(HWND hWnd = GetActiveWindow(),
   DBPROMPTOPTIONS dwPromptOptions = DBPROMPTOPTIONS_WIZARDSHEET) throw();

HRESULT Open(LPCWSTR szProgID,
   DBPROPSET* pPropSet = NULL,
   ULONG nPropertySets = 1) throw();

HRESULT Open(LPCSTR szProgID,
   LPCTSTR pName,LPCTSTR pUserName = NULL,
   LPCTSTR pPassword = NULL,
   long nInitMode = 0) throw();

Parameter

Clsid
[di] Penyedia CLSID data.

pPropSet
[di] Penunjuk ke array struktur DBPROPSET yang berisi properti dan nilai yang akan diatur. Lihat Kumpulan Properti dan Grup Properti di Referensi Programmer OLE DB di Windows SDK.

nPropertySets
[di] Jumlah struktur DBPROPSET yang diteruskan dalam argumen pPropSet.

pName
[di] Nama database yang akan disambungkan.

pUserName
[di] Nama pengguna.

pPassword
[di] Kata sandi pengguna.

nInitMode
[di] Mode inisialisasi database. Lihat Properti Inisialisasidi Referensi Programmer OLE DB di Windows SDK untuk daftar mode inisialisasi yang valid. Jika nInitMode adalah nol, tidak ada mode inisialisasi yang disertakan dalam kumpulan properti yang digunakan untuk membuka koneksi.

szProgID
[di] Pengidentifikasi program.

Pencacah
[di] Objek CEnumerator yang digunakan untuk mendapatkan moniker untuk membuka koneksi ketika pemanggil tidak menentukan CLSID.

hWnd
[di] Tangani ke jendela yang akan menjadi induk kotak dialog. Menggunakan kelebihan beban fungsi yang menggunakan parameter hWnd akan secara otomatis memanggil Komponen Layanan; lihat Keterangan untuk detailnya.

dwPromptOptions
[di] Menentukan gaya kotak dialog pencari lokasi untuk ditampilkan. Lihat Msdasc.h untuk nilai yang mungkin.

Tampilkan Nilai

HRESULT standar.

Keterangan

Kelebihan metode yang menggunakan parameter hWnd membuka objek sumber data dengan komponen layanan di oledb32.dll; DLL ini berisi implementasi fitur Komponen Layanan seperti Pengumpulan Sumber Daya, Pendaftaran Transaksi Otomatis, dan sebagainya. Untuk informasi selengkapnya, lihat referensi OLE DB di Panduan Programmer OLE DB.

Metode kelebihan beban yang tidak menggunakan parameter hWnd membuka objek sumber data tanpa menggunakan komponen layanan di oledb32.dll. Objek CDataSource yang dibuka dengan kelebihan beban fungsi ini tidak akan dapat menggunakan salah satu fungsionalitas Komponen Layanan.

Contoh

Kode berikut menunjukkan cara membuka sumber data Jet 4.0 dengan Templat OLE DB. Anda memperlakukan sumber data Jet sebagai sumber data OLE DB. Namun, panggilan Anda untuk Open membutuhkan dua set properti: satu untuk DBPROPSET_DBINIT dan yang lainnya untuk DBPROPSET_JETOLEDB_DBINIT, sehingga Anda dapat mengatur DBPROP_JETOLEDB_DATABASEPASSWORD.

CDBPropSet rgDBPropSet[2];  // Declare two property sets;
                            // set properties elsewhere as appropriate.

hr = m_DataSource.Open(szProgId, rgDBPropSet, 2);

CDataSource::OpenFromFileName

Membuka sumber data dari file yang ditentukan oleh nama file yang disediakan pengguna.

Sintaks

HRESULT OpenFromFileName(LPCOLESTR szFileName) throw();

Parameter

szFileName
[di] Nama file, biasanya koneksi sumber data (. File UDL).

Untuk informasi selengkapnya tentang file tautan data (file.udl), lihat Gambaran Umum DATA Link API di Windows SDK.

Tampilkan Nilai

HRESULT standar.

Keterangan

Metode ini membuka objek sumber data menggunakan komponen layanan di oledb32.dll; DLL ini berisi implementasi fitur Komponen Layanan seperti Kumpulan Sumber Daya, Pendaftaran Transaksi Otomatis, dan sebagainya. Untuk informasi selengkapnya, lihat referensi OLE DB di Panduan Programmer OLE DB.

CDataSource::OpenFromInitializationString

Membuka sumber data yang ditentukan oleh string inisialisasi yang disediakan pengguna.

Sintaks

HRESULT OpenFromInitializationString(LPCOLESTR szInitializationString,
   bool fPromptForInfo= false) throw();

Parameter

szInitializationString
[di] String inisialisasi.

fPromptForInfo
[di] Jika argumen ini diatur ke true, maka OpenFromInitializationString akan mengatur properti DBPROP_INIT_PROMPT ke DBPROMPT_COMPLETEREQUIRED, yang menentukan bahwa pengguna hanya diminta jika informasi lebih lanjut diperlukan. Ini berguna untuk situasi di mana string inisialisasi menentukan database yang memerlukan kata sandi, tetapi string tidak berisi kata sandi. Pengguna akan dimintai kata sandi (atau informasi lain yang hilang) saat mencoba menyambungkan ke database.

Nilai defaultnya adalah false, yang menentukan bahwa pengguna tidak pernah diminta (mengatur DBPROP_INIT_PROMPT ke DBPROMPT_NOPROMPT).

Tampilkan Nilai

HRESULT standar.

Keterangan

Metode ini membuka objek sumber data menggunakan komponen layanan di oledb32.dll; DLL ini berisi implementasi fitur Komponen Layanan seperti Kumpulan Sumber Daya, Pendaftaran Transaksi Otomatis, dan sebagainya.

CDataSource::OpenWithPromptFileName

Metode ini meminta pengguna dengan kotak dialog, lalu membuka sumber data menggunakan file yang ditentukan oleh pengguna.

Sintaks

HRESULT OpenWithPromptFileName(HWND hWnd = GetActiveWindow(   ),
   DBPROMPTOPTIONS dwPromptOptions = DBPROMPTOPTIONS_NONE,
   LPCOLESTR szInitialDirectory = NULL) throw();

Parameter

hWnd
[di] Tangani ke jendela yang akan menjadi induk kotak dialog.

dwPromptOptions
[di] Menentukan gaya kotak dialog pencari lokasi untuk ditampilkan. Lihat Msdasc.h untuk nilai yang mungkin.

szInitialDirectory
[di] Direktori awal yang akan ditampilkan dalam kotak dialog pencari lokasi.

Tampilkan Nilai

HRESULT standar.

Keterangan

Metode ini membuka objek sumber data menggunakan komponen layanan di oledb32.dll; DLL ini berisi implementasi fitur Komponen Layanan seperti Kumpulan Sumber Daya, Pendaftaran Transaksi Otomatis, dan sebagainya. Untuk informasi selengkapnya, lihat referensi OLE DB di Panduan Programmer OLE DB.

CDataSource::OpenWithServiceComponents

Membuka objek sumber data menggunakan komponen layanan di oledb32.dll.

Sintaks

HRESULT OpenWithServiceComponents (const CLSID clsid,
   DBPROPSET* pPropset = NULL,
   ULONG ulPropSets = 1);

HRESULT OpenWithServiceComponents (LPCSTR szProgID,
   DBPROPSET* pPropset = NULL,
   ULONG ulPropSets = 1);

Parameter

Clsid
[di] Penyedia CLSID data.

szProgID
[di] ID program penyedia data.

pPropset
[di] Penunjuk ke array struktur DBPROPSET yang berisi properti dan nilai yang akan diatur. Lihat Kumpulan Properti dan Grup Properti di Referensi Programmer OLE DB di Windows SDK. Jika objek sumber data diinisialisasi, properti harus termasuk dalam grup properti Sumber Data. Jika properti yang sama ditentukan lebih dari sekali dalam pPropset, nilai mana yang digunakan khusus penyedia. Jika ulPropSets adalah nol, parameter ini diabaikan.

ulPropSets
[di] Jumlah struktur DBPROPSET yang diteruskan dalam argumen pPropSet. Jika ini nol, penyedia mengabaikan pPropset.

Tampilkan Nilai

HRESULT standar.

Keterangan

Metode ini membuka objek sumber data menggunakan komponen layanan di oledb32.dll; DLL ini berisi implementasi fitur Komponen Layanan seperti Kumpulan Sumber Daya, Pendaftaran Transaksi Otomatis, dan sebagainya. Untuk informasi selengkapnya, lihat referensi OLE DB di Panduan Programmer OLE DB.

Baca juga

Templat Konsumen OLE DB
Referensi Templat Konsumen OLE DB