Sdílet prostřednictvím


ISSCommandWithParameters::GetParameterProperties (OLE DB)

platí pro:SQL ServerAzure SQL Databaseazure SQL Managed InstanceAzure Synapse AnalyticsPlatform Platform System (PDW)

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)