Bagikan melalui


ISSCommandWithParameters::GetParameterProperties di SQL Server Native Client (OLE DB)

Berlaku untuk:SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics AnalyticsPlatform System (PDW)

Penting

SQL Server Native Client (sering disingkat SNAC) telah dihapus dari SQL Server 2022 (16.x) dan SQL Server Management Studio 19 (SSMS). Penyedia SQL Server Native Client OLE DB (SQLNCLI atau SQLNCLI11) dan Penyedia Microsoft OLE DB warisan untuk SQL Server (SQLOLEDB) tidak direkomendasikan untuk pengembangan baru. Beralih ke Microsoft OLE DB Driver (MSOLEDBSQL) baru untuk SQL Server ke depannya.

Mengembalikan array struktur kumpulan properti SSPARAMPROPS, satu properti SSPARAMPROPS yang ditetapkan untuk setiap parameter UDT atau XML.

Sintaks

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 ICommandProperties::GetProperties, kecuali bahwa DB_S_ERRORSOCCURRED dan DB_E_ERRORSOCCURRED tidak dapat dinaikkan.

Keterangan

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)