Delen via


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

van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Belangrijk

De SQL Server Native Client (vaak afgekort SNAC) is verwijderd uit SQL Server 2022 (16.x) en SQL Server Management Studio 19 (SSMS). Zowel de SQL Server Native Client OLE DB-provider (SQLNCLI of SQLNCLI11) als de verouderde Microsoft OLE DB-provider voor SQL Server (SQLOLEDB) worden niet aanbevolen voor nieuwe ontwikkeling. Schakel over naar het nieuwe Microsoft OLE DB-stuurprogramma (MSOLEDBSQL) voor SQL Server.

Retourneert een matrix van SSPARAMPROPS-eigenschappensetstructuren, één SSPARAMPROPS-eigenschap die is ingesteld voor elke UDT- of XML-parameter.

Syntaxis

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

Argumenten

pcParams[out][in]
Een aanwijzer naar het geheugen dat het aantal SSPARAMPROPS-structuren bevat dat is geretourneerd in prgParamProperties.

prgParamProperties[out]
Een aanwijzer naar het geheugen waarin een matrix van SSPARAMPROPS-structuren wordt geretourneerd. De provider wijst geheugen toe voor de structuren en retourneert het adres aan dit geheugen; de consument publiceert dit geheugen met IMalloc::Free wanneer deze de structuren niet meer nodig heeft. Voordat u IMalloc::Free aanroept voor prgParamProperties-, moet de consument ook VariantEvaluatie- aanroepen voor de eigenschap vValue van elke DBPROP-structuur om een geheugenlek te voorkomen in gevallen waarin de variant een verwijzingstype bevat (zoals een BSTR.) Als pcParams nul is op de uitvoer of als er een andere fout optreedt dan DB_E_ERRORSOCCURRED, wijst de provider geen geheugen toe en zorgt ervoor dat prgParamProperties- een null-aanwijzer is op de uitvoer.

Retourcodewaarden

De methode GetParameterProperties retourneert dezelfde foutcodes als de primaire OLE DB-methode ICommandProperties::GetProperties, behalve dat DB_S_ERRORSOCCURRED en DB_E_ERRORSOCCURRED niet kunnen worden gegenereerd.

Opmerkingen

ISSCommandWithParameters::GetParameterProperties gedraagt zich consistent met betrekking tot GetParameterInfo. Als ISSCommandWithParameters::SetParameterProperties of SetParameterInfo niet zijn aangeroepen of zijn aangeroepen met cParams gelijk aan nul, GetParameterInfo parameterinformatie afleiden en retourneert dit. Als ISSCommandWithParameters::SetParameterProperties of SetParameterInfo zijn aangeroepen voor ten minste één parameter, retourneert ISSCommandWithParameters::GetParameterProperties alleen eigenschappen voor die parameters waarvoor ISSCommandWithParameters::SetParameterProperties is aangeroepen. Als ISSCommandWithParameters::SetParameterProperties wordt aangeroepen na ISSCommandWithParameters::GetParameterProperties of GetParameterInfo, volgende aanroepen naar ISSCommandWithParameters::GetParameterProperties de overschreven waarden retourneren voor die parameters waarvoor ISSCommandWithParameters::SetParameterProperties is aangeroepen.

De SSPARAMPROPS-structuur wordt als volgt gedefinieerd:

struct SSPARAMPROPS {
    DBORDINAL iOrdinal;
    ULONG cPropertySets;
    DBPROPSET *rgPropertySets;
};
Lid Beschrijving
iOrdinal- Het rangtelwoord van de doorgegeven parameter.
cPropertySets Het aantal DBPROPSET-structuren in rgPropertySets.
rgPropertySets Een aanwijzer naar het geheugen waarin een matrix van DBPROPSET-structuren moet worden geretourneerd.

Zie ook

ISSCommandWithParameters (OLE DB)