다음을 통해 공유


ISSCommandWithParameters::GetParameterProperties(OLE DB)

SSPARAMPROPS 속성 집합 구조체의 배열을 반환하며, 각 UDT 또는 XML 매개 변수에 대해 하나의 SSPARAMPROPS 속성 집합을 반환합니다.

문법

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

주장들

pcParams[out][in]
prgParamProperties에서 반환된 SSPARAMPROPS 구조체의 수를 포함하는 메모리에 대한 포인터입니다.

prgParamProperties[out]
SSPARAMPROPS 구조의 배열이 반환되는 메모리에 대한 포인터입니다. 공급자는 구조체에 대한 메모리를 할당하고 이 메모리에 주소를 반환합니다. 소비자는 더 이상 구조가 필요하지 않을 때 IMalloc::Free를 사용하여 이 메모리를 해제합니다. prgParamProperties에 대해 IMalloc::Free를 호출하기 전에 소비자는 변형에 참조 형식(예: BSTR)이 포함된 경우 메모리 누수 방지를 위해 각 DBPROP 구조체의 vValue 속성에 대해 VariantClear 를 호출해야 합니다. pcParams가 출력 시 0이거나 DB_E_ERRORSOCCURRED 이외의 오류가 발생하는 경우 공급자는 메모리를 할당하지 않으며 prgParamProperties출력에 대한 null 포인터인지 확인합니다.

반환 코드 값

GetParameterProperties 메서드는 코어 OLE DB ICommandProperties::GetProperties 메서드와 동일한 오류 코드를 반환합니다. 단, DB_S_ERRORSOCCURRED 및 DB_E_ERRORSOCCURED 발생될 수 없습니다.

비고

ISSCommandWithParameters::GetParameterProperties는 GetParameterInfo와 관련하여 일관되게 동작합니다. ISSCommandWithParameters::SetParameterProperties 또는 SetParameterInfo가 호출되지 않았거나 0과 같은 cParams로 호출된 경우 GetParameterInfo는 매개 변수 정보를 파생시키고 이를 반환합니다. ISSCommandWithParameters::SetParameterProperties 또는 SetParameterInfo가 하나 이상의 매개 변수에 대해 호출된 경우 ISSCommandWithParameters::GetParameterProperties는 ISSCommandWithParameters::SetParameterProperties가 호출된 매개 변수에 대해서만 속성을 반환합니다. ISSCommandWithParameters::SetParameterProperties가 ISSCommandWithParameters::GetParameterProperties 또는 GetParameterInfo 이후에 호출되는 경우 ISSCommandWithParameters::GetParameterProperties에 대한 후속 호출은 ISSCommandWithParameters::SetParameterProperties가 호출된 매개 변수에 대해 재정의된 값을 반환합니다.

SSPARAMPROPS 구조체는 다음과 같이 정의됩니다.

struct SSPARAMPROPS {

DBORDINAL iOrdinal;

ULONG cPropertySets;

DBPROPSET *rgPropertySets;

};

회원 설명
iOrdinal 전달된 매개 변수의 서수입니다.
cPropertySets rgPropertySets의 DBPROPSET 구조체 수입니다.
rgPropertySets DBPROPSET 구조의 배열을 반환할 메모리에 대한 포인터입니다.

또한 참조하십시오

ISSCommandWithParameters(OLE DB)