Udostępnij za pośrednictwem


Wykonywanie poleceń zawierające oródwierszową parametrów

Wykonywanie polecenia, który zawiera tabela-parametry wyceniane wymaga dwóch faz:

  1. Określ typy parametrów.

  2. Powiązania danych parametru.

Specyfikacja oródwierszową parametr

Konsument może określić typ tabela-parametr wycenione.Informacje te obejmują tabela-nazwa typu parametru wycenione.Zawiera również nazwę schematu, jeśli typ zdefiniowany przez użytkownika tabela dla parametru oródwierszową nie ma bieżącego domyślnego schematu dla połączenia.W zależności od obsługi serwera konsumenta można również określić opcjonalny metadane, takich jak kolejność kolumn i można określić, że wartości domyślne wszystkich wierszy i kolumn określonego.

Aby określić tabela-parametr wyceniane, wywołania konsumenta ISSCommandWithParamter::SetParameterInfoi opcjonalnie wywołuje ISSCommandWithParameters::SetParameterProperties.Dla parametru z wartościami przechowywanymi w tabela pwszDataSourceType pole w strukturze DBPARAMBINDINFO ma wartość DBTYPE_TABLE.ulParamSize Pole jest zestaw do ~ 0, aby wskazać, że długość jest nieznany.Szczególne właściwości dla tabela-wyceniane parametrów, takich jak nazwa schematu, wpisz nazwę, kolejność kolumn i kolumn domyślnych zestaw za pomocą ISSCommandWithParameters::SetParameterProperties.

Powiązanie oródwierszową parametr

Parametr z wartościami przechowywanymi w tabela może być dowolny obiekt zestawu zestaw wierszy.Dostawca odczytuje z tego obiektu podczas wysyłania tabela-wartości parametrów serwera podczas wykonywania.

Aby powiązać tabela-parametr wyceniane, wywołania konsumenta IAccessor::CreateAccessor.wType Struktury DBBINDING dla pola tabela-wyceniane parametr jest ustawiony na DBTYPE_tabela.pObject Struktury DBBINDING jest NIEZEROWA oraz pObjectprzez iid Członkowskich jest ustawiona na IID_IRowset lub innych tabela-wycenione zestaw wierszy parametr obiektu interfejsy.Pozostałe pola w strukturze DBBINDING powinny być zestaw samo są zestaw dla bloków BLOB strumieniowej.

Powiązania dla tabela-parametr wyceniane i obiekt zestawu zestaw wierszy skojarzonych z tabela-parametr wyceniane, obowiązują następujące ograniczenia:

  • Dozwolone wartości stanu tylko dla tabela-danych kolumny zestawu zestaw wierszy parametr wyceniane są DBSTATUS_S_ISNULL i DBSTATUS_S_OK.DBSTATUS_S_DEFAULT spowoduje błąd, a wartość stanu związany będzie zestaw do DBSTATUS_E_BADSTATUS.

  • A tabela-parametr wyceniane są oznaczane w stanie DBSTATUS_S_DEFAULT.Jedyne prawidłowe wartości to DBSTATUS_S_DEFAULT i DBSTATUS_S_OK.Kiedy jest w stanie zestaw do DBSTATUS_S_DEFAULT, wartość parametru oródwierszową odpowiada pustą tabela.

  • Kolumny tylko do odczytu w tabela-wyceniane parametry (tożsamości lub kolumny obliczane) muszą być oznaczone jako domyślne za pomocą SSPROP_PARAM_tabela_DEFAULT_COLUMNS właściwość.kolumna, które mają wartości domyślne również muszą być oznaczone jako domyślne przez SSPROP_PARAM_tabelawłaściwość _DEFAULT_COLUMNS, aby zezwolić na wartość domyślną dla kolumna danych wartości dla danego tabela-parametr wycenione.Dostawca zignoruje wartości danych dla kolumny oznaczony jako domyślny.

  • Dane zostaną wysłane na serwer dla kolumn z DBPROP_COL_AUTOINCREMENT lub SSPROP_COL_COMPUTED, chyba że SSPROP_PARAM_TABLE_DEFAULT jest również zestaw.

Zobacz także

Koncepcje