Sdílet prostřednictvím


ISSCommandWithParameters::GetParameterProperties (OLE DB)

Platí na:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytický platformový systém (PDW)SQL databáze v Microsoft Fabric

Stáhnout ovladač OLE DB

Vrátí pole SSPARAMPROPS struktury sady vlastností, jednu vlastnost SSPARAMPROPS nastavenou pro každý UDT nebo XML parametr.

Syntax

  
HRESULT GetParameterProperties(  
      DB_UPARAMS *pcParams,  
      SSPARAMPROPS **prgParamProperties);  

Argumenty

pcParams[out][in]
Ukazatel na paměť obsahující počet struktur SSPARAMPROPS vrácených v prgParamProperties.

prgParamProperties[out]
Ukazatel na paměť, ve které je vráceno pole struktur SSPARAMPROPS. Zprostředkovatel přidělí paměť pro struktury a vrátí adresu této paměti, příjemce uvolní tuto paměť s IMalloc::Free, když už nepotřebuje struktury. Před voláním IMalloc::Free pro prgParamPropertiesmusí příjemce také volat VariantClear pro vValue vlastnost každé struktury DBPROP, aby nedošlo k úniku paměti v případech, kdy varianta obsahuje referenční typ, jako je BSTR. Pokud pcParams je ve výstupu nula nebo dojde k jiné chybě než DB_E_ERRORSOCCURRED, poskytovatel nepřidělí žádnou paměť a zajistí, prgParamProperties je ukazatel null na výstupu.

Návratové hodnoty kódu

Metoda GetParameterProperties vrátí stejné kódy chyb jako základní metoda OLE DB ICommandProperties::GetProperties s tím rozdílem, že DB_S_ERRORSOCCURRED a DB_E_ERRORSOCCURRED nelze vyvolat.

Poznámky

ISSCommandWithParameters::GetParameterProperties metoda se chová konzistentně s ohledem na GetParameterInfo. Pokud ISSCommandWithParameters::SetParameterProperties nebo SetParameterInfo nebyly volány nebo byly volány pomocí cParams rovno nule, GetParameterInfo odvozuje informace o parametrech a vrátí je. Pokud ISSCommandWithParameters::SetParameterProperties nebo SetParameterInfo byly volána alespoň pro jeden parametr, ISSCommandWithParameters::GetParameterProperties metoda vrátí vlastnosti pouze pro parametry, pro které ISSCommandWithParameters::SetParameterProperties byl volána. Pokud se ISSCommandWithParameters::SetParameterProperties volá po ISSCommandWithParameters::GetParameterProperties nebo GetParameterInfo, následná volání ISSCommandWithParameters::GetParameterProperties vrátí přepsáné hodnoty pro tyto parametry, pro které byla volána metoda ISSCommandWithParameters::SetParameterProperties.

Struktura SSPARAMPROPS je definována takto:

struct SSPARAMPROPS {

DBORDINAL iOrdinal;

ULONG cPropertySets;

DBPROPSET *rgPropertySets;

};

Člen Popis
iOrdinal Pořadové číslo předaného parametru.
cPropertySets Počet struktur DBPROPSET v rgPropertySets.
rgPropertySets Ukazatel na paměť, ve které chcete vrátit pole struktur DBPROPSET.

Viz také

ISSCommandWithParameters (OLE DB)