Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Mengembalikan array struktur kumpulan properti SSPARAMPROPS, satu properti SSPARAMPROPS yang ditetapkan untuk setiap parameter UDT atau XML.
Sintaksis
HRESULT GetParameterProperties(
DB_UPARAMS *pcParams,
SSPARAMPROPS **prgParamProperties);
Argumen
pcParams[out][in]
Pointer ke memori yang berisi jumlah struktur SSPARAMPROPS yang dikembalikan dalam prgParamProperties.
prgParamProperties[out]
Pointer ke memori di mana array struktur SSPARAMPROPS dikembalikan. Penyedia mengalokasikan memori untuk struktur dan mengembalikan alamat ke memori ini; konsumen merilis memori ini dengan IMalloc::Free ketika tidak lagi membutuhkan struktur. Sebelum memanggil IMalloc::Gratis untuk prgParamProperties, konsumen juga harus memanggil VariantClear untuk properti vValue dari setiap struktur DBPROP untuk mencegah kebocoran memori dalam kasus di mana varian berisi jenis referensi (seperti BSTR.) Jika pcParams nol pada output atau kesalahan selain DB_E_ERRORSOCCURRED terjadi, penyedia tidak mengalokasikan memori apa pun dan memastikan bahwa prgParamProperties adalah pointer null pada output.
Mengembalikan Nilai Kode
Metode GetParameterProperties mengembalikan kode kesalahan yang sama dengan metode inti OLE DB ICommandProperties::GetProperties , kecuali bahwa DB_S_ERRORSOCCURRED dan DB_E_ERRORSOCCURED tidak dapat dinaikkan.
Komentar
ISSCommandWithParameters::GetParameterProperties berperilaku konsisten sehubungan dengan GetParameterInfo. Jika ISSCommandWithParameters::SetParameterProperties atau SetParameterInfo belum dipanggil atau telah dipanggil dengan cParams sama dengan nol, GetParameterInfo memperoleh informasi parameter dan mengembalikannya. Jika ISSCommandWithParameters::SetParameterProperties atau SetParameterInfo telah dipanggil untuk setidaknya satu parameter, ISSCommandWithParameters::GetParameterProperties mengembalikan properti hanya untuk parameter tersebut yang ISSCommandWithParameters::SetParameterProperties telah dipanggil. Jika ISSCommandWithParameters::SetParameterProperties dipanggil setelah ISSCommandWithParameters::GetParameterProperties atau GetParameterInfo, Panggilan berikutnya ke ISSCommandWithParameters::GetParameterProperties mengembalikan nilai yang diambil alih untuk parameter tersebut yang ISSCommandWithParameters::SetParameterProperties telah dipanggil.
Struktur SSPARAMPROPS didefinisikan sebagai berikut:
struct SSPARAMPROPS {
DBORDINAL iOrdinal;
ULONG cPropertySets;
DBPROPSET *rgPropertySets;
};
| Anggota | Deskripsi |
|---|---|
| iOrdinal | Ordinal parameter yang dilewatkan. |
| cPropertySets | Jumlah struktur DBPROPSET di rgPropertySets. |
| rgPropertySets | Pointer ke memori untuk mengembalikan array struktur DBPROPSET. |