Udostępnij przez


ISSCommandWithParameters::GetParameterProperties (OLE DB)

Zwraca tablicę SSPARAMPROPS struktur zestaw właściwości, jedną właściwość SSPARAMPROPS dla każdego z parametrów UDT lub XML.

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

Argumenty

  • pcParams[Brak][w]
    Wskaźnik do pamięci, która zawiera liczbę struktur SSPARAMPROPS zwrócone w prgParamProperties.

  • prgParamProperties[Brak]
    Wskaźnik do pamięci, w której zostanie zwrócona tablica struktur SSPARAMPROPS.Dostawca przydziela pamięci dla struktury i zwraca adres pamięci; konsumenta zwalnia to pamięć z IMalloc::Free , gdy nie są już potrzebne do struktur.Przed telefonicznej IMalloc::Free for prgParamProperties, konsument musi również wywołać VariantClear for the vValue właściwość każdego DBPROP struktury w celu zapobieżenia przeciek pamięci w przypadku, gdy wariantu zawiera typu odwołania (na przykład BSTR.) If pcParams wynosi zero na wyjściu lub wystąpi błąd innych niż DB_E_ERRORSOCCURRED, dostawca nie przydzielał wszystkie pamięci i zapewnia, że prgParamProperties jest pusty wskaźnik w danych wyjściowych.

Wartości kodów powrotnych

The GetParameterProperties metoda returns the same error codes as the core OLE DB ICommandProperties::GetProperties metoda, except that DB_S_ERRORSOCCURRED and DB_E_ERRORSOCCURED cannot be raised.

Remarks

ISSCommandWithParameters::GetParameterProperties zachowuje się stale w odniesieniu do GetParameterInfo.Jeśli ISSCommandWithParameters::SetParameterProperties or SetParameterInfo nie została wywołana lub mieć została wywołana z cParams równa zeru, GetParameterInfo uzyskuje informacje o parametrach i zwraca to.Jeśli ISSCommandWithParameters::SetParameterProperties or SetParameterInfo o nazwie dla co najmniej jeden parametr, ISSCommandWithParameters::GetParameterProperties zwraca wartość właściwości tylko dla tych parametrów, dla których ISSCommandWithParameters::SetParameterProperties została wywołana.Jeśli ISSCommandWithParameters::SetParameterProperties nazywany jest ISSCommandWithParameters::GetParameterProperties or GetParameterInfo, kolejne wywołania ISSCommandWithParameters::GetParameterProperties zwracają zastąpiona wartości dla tych parametrów, dla których ISSCommandWithParameters::SetParameterProperties została wywołana.

Struktura SSPARAMPROPS jest zdefiniowane w następujący sposób:

struct SSPARAMPROPS {

DBORDINAL iOrdinal;

ULONG cPropertySets;

DBPROPSET *rgPropertySets;

};

Element członkowski

Description

iOrdinal

Liczba porządkowa parametru przekazana.

cPropertySets

Liczba DBPROPSET struktury rgPropertySets.

rgPropertySets

Wskaźnik do pamięci, w której zostanie zwrócona tablica struktur DBPROPSET.