Bagikan melalui


ISSCommandWithParameters::GetParameterProperties (OLE DB)

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.

Lihat Juga

ISSCommandWithParameters (OLE DB)