Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy do:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
System Platform Analitycznych (PDW)
Baza danych SQL w Microsoft Fabric
Ustawia właściwości parametrów na podstawie parametrów pojedynczych przez porządk lub ustawia właściwości parametrów zbiorczych poprzez określenie tablicy struktur SSPARAMPROPS.
Składnia
HRESULT SetParameterProperties(
DB_UPARAMS cParams,
SSPARAMPROPS rgParamProperties[]);
Arguments
cParams[in]
Liczba struktur SSPARAMPROPS w tablicy rgParamProperties . Jeśli ta liczba wynosi zero, ISSCommandWithParameters::SetParameterProperties usunie wszystkie właściwości, które mogły być określone dla dowolnych parametrów w poleceniu.
rgParamProperties[in]
Zestaw struktur SSPARAMPROPS do ustawienia.
Zwracanie wartości kodu
Metoda ISSCommandWithParameters::SetParameterProperties zwraca te same kody błędów co podstawowa metoda OLE DB ICommandProperties::SetProperties .
Uwagi
Ustawianie właściwości parametrów tą metodą jest dozwolone na podstawie parametrów przez pojedynczy system lub za pomocą pojedynczego wywołania ISSCommandWithParameters::SetParameterProperties po zbudowaniu SSPARAMPROPS z tablicy właściwości.
Metoda SetParameterInfo musi zostać wywołana przed wywołaniem metody ISSCommandWithParameters::SetParameterProperties . Wywołanie SetParameterProperties(0, NULL) usuwa wszystkie określone właściwości parametrów, a wywołanie SetParameterInfo(0,NULL,NULL) usuwa wszystkie informacje parametrów, w tym wszelkie właściwości, które mogą być powiązane z parametrem.
Wywołanie ISSCommandWithParameters::SetParameterProperties, aby określić właściwości parametru, który nie jest typu DBTYPE_XML ani DBTYPE_UDT, zwraca DB_E_ERRORSOCCURRED lub DB_S_ERRORSOCCURRED i oznacza pole dwStatus wszystkich DBPROPów zawartych w SSPARAMPROPS dla tego parametru DBPROPSTATUS_NOTSET. Tablica DBPROP każdego DBPROPSETU zawartego w SSPARAMPROPS powinna być przejrzana, aby wykryć, do którego parametru odnosi się DB_E_ERRORSOCCURRED lub DB_S_ERRORSOCCURRED.
Jeśli ISSCommandWithParameters::SetParameterProperties zostanie wywołany, aby określić właściwości parametrów, których informacje o parametrach nie zostały jeszcze ustalone za pomocą SetParameterInfo, dostawca zwraca E_UNEXPECTED z następującym komunikatem o błędzie:
Metoda SetParameterProperties nie może być wywołana dla określonych parametrów bez wcześniejszego wywołania metody SetParameterInfo. Informacje o parametrze muszą być ustawione przed ustawieniem właściwości parametrów.
Jeśli wywołanie ISSCommandWithParameters::SetParameterProperties zawiera parametry, w których informacje o parametrze zostały ustawione, oraz takie, gdzie informacje o parametrze nie zostały ustawione, właściwości dwStatus w DBPROPSETIE zbioru właściwości SSPARAMPROPS zwrócą DBSTATUS_NOTSET.
Struktura SSPARAMPROPS jest zdefiniowana następująco:
struct SSPARAMPROPS {
DBORDINAL iOrdinal;
ULONG cPropertySets;
DBPROPSET *rgPropertySets;
};
Ulepszenia silnika baz danych, począwszy od SQL Server 2012 (11.x), pozwalają ISSCommandWithParameters::SetParameterProperties uzyskać dokładniejsze opisy oczekiwanych wyników. Te dokładniejsze wyniki mogą różnić się od wartości zwracanych przez ISSCommandWithParameters::SetParametr Properties w poprzednich wersjach SQL Servera. Więcej informacji można znaleźć w sekcji Metadata Discovery.
| Członek | Description |
|---|---|
| iOrdinal | Porządkowa parametru miotanego. |
| cPropertySets | Liczba struktur DBPROPSET w rgPropertySets. |
| rgPropertySets | Wskaźnik do pamięci, w którym można zwrócić tablicę struktur DBPROPSET. |