Udostępnij za pośrednictwem


Tabela Valued parametru pola deskryptora

Obsługa wartości w tabela parametrów obejmuje nowy SQL Server-określonych w polach deskryptory parametr aplikacji ODBC (APDs) i wdrażaniu deskryptory parametr (IPDs).

Uwagi

Imię i nazwisko

Lokalizacja

Typ

Description

SQL_CA_SS_TYPE_NAME

IPD

SQLTCHAR *

Nazwa serwera typu parametru wartości w tabela.

Jeśli nazwa typu parametru wartości tabela zostanie użyty na wywołanie SQLBindParameter, należy ją określić jako wartość Unicode, nawet w aplikacjach, które są wbudowane, jak aplikacje ANSI. Wartość używana w przypadku parametru StrLen_or_IndPtr powinna być SQL_NTS lub długość ciąg o nazwie pomnożona przez sizeof(WCHAR).

Jeśli nazwa typu parametru wartości tabela zostanie użyty za pomocą SQLSetDescField, można ją określić przy użyciu literału, który jest zgodny ze sposobem, w jaki aplikacja jest tworzona. Menedżer sterownika ODBC będzie wykonywał żadnych wymagana konwersja Unicode.

SQL_CA_SS_TYPE_CATALOG_NAME (tylko do odczytu)

IPD

SQLTCHAR *

Katalog, w których typ jest zdefiniowany.

SQL_CA_SS_TYPE_SCHEMA_NAME

IPD

SQLTCHAR *

Schemat, gdzie typ jest zdefiniowany.

Aplikacje muszą być nie SQL_CA_SS_TYPE_CATALOG_NAME zestaw wycenione tabela parametrów.W ten sposób zwróci SQL_ERROR i rejestrowanie diagnostyczne rekordu z SQLSTATE = HY091 i komunikatu "identyfikator pole deskryptora nieprawidłowe".

Następujące atrybuty instrukcja i polach nagłówka deskryptora stosuje się do wartości w tabela parametrów, gdy fokus parametru jest zestaw z parametrem wycenione tabela:

Imię i nazwisko

Lokalizacja

Typ

Description

SQL_ATTR_PARAMSET_SIZE

(Jest to równoważne SQL_DESC_ARRAY_SIZE w APD.)

APD

SQLUINTEGER

Rozmiar tablicy tablic buforu parametru wartości w tabela.Jest to maksymalna liczba wierszy będzie odpowiedni dla buforów lub rozmiaru buforów w wierszach; samą wartość parametru wartości tabela może mieć większą lub mniejszą liczbę wierszy, niż może pomieścić buforów.Wartością domyślną jest 1.

NoteNote:
Jeśli jest SQL_SOPT_SS_PARAM_FOCUS zestaw na wartość domyślną 0 SQL_ATTR_PARAMzestaw_SIZE odwołuje się do instrukcja i określa liczbę parametrów zestaw s.Jeśli ustawiono SQL_SOPT_SS_PARAM_FOCUS liczba porządkowa parametru wartości w tabela, odwołuje się do parametru wartości tabela i określa liczbę wierszy dla jednego parametru dla parametru wartości w tabela.

SQL_ATTR_PARAM _BIND_TYPE

APD

SQLINTEGER

Wartość domyślna to SQL_PARAM_BIND_BY_COLUMN.

Zaznacz row-wise wiązanie, to pole jest równa długość struktury lub wystąpienie buforu, która będzie związana z zestaw wierszy parametru wartości w tabela.Ta długość musi zawierać miejsce na wszystkie kolumny związanej i wszelkie uzupełnienie strukturę lub buforu.Dzięki temu, gdy adres kolumna związana jest zwiększany o określonej długości, początku tej samej kolumny w następnym wierszu będą wskazać wynik.Podczas korzystania z sizeof operator w ANSI C, to zachowanie jest gwarantowane.

SQL_ATTR_PARAM_BIND_OFFSET_PTR

APD

SQLINTEGER *

Wartość domyślna to pusty wskaźnik.

Jeśli to pole jest inne niż null, sterownik dereferences wskaźnik, dodaje wartość dereferenced do każdego z odroczone pól w rekordzie deskryptora (SQL_DESC_DATA_PTR SQL_DESC_INDICATOR_PTR i SQL_DESC_OCTET_LENGTH_PTR) i używa nowej wartości wskaźnika do wartości danych dostępu.

Pola te obowiązują tylko z parametrami wycenione tabela i są ignorowane w przypadku innych typów danych.

SQL_CA_SS_TYPE_NAME jest opcjonalna dla wszystkich wywołań procedura przechowywana.Musi być określona dla instrukcji SQL, które nie są wywołaniami procedury do włączenia serwera określić typ parametru wartości w tabela.

Jeśli nazwa typu jest wymagane, a typ tabela dla parametru wartości w tabela jest zdefiniowany w schemacie inny niż procedura przechowywana, SQL_CA_SS_TYPE_SCHEMA_NAME musi być określona w deskryptorze parametr wykonania (IPD).W przeciwnym razie serwer nie będzie mógł określić typu parametru wartości w tabela.Spowoduje to błąd podczas wywoływania SQLExecute lub SQLExecDirect. Ten błąd będzie miał SQLSTATE = 07006 i komunikat „ ograniczeniami danych typu atrybut naruszenia".

Parametr wycenione tabela kolumna można użyć row-wise albo kolumna-wise wiązanie.Wartość domyślna to kolumna-wise wiązanie.Row-Wise wiązanie może być określony przez ustawienie SQL_ATTR_PARAM_BIND_TYPE i PARAM_BIND_OFFSET_PTR SQL_ATTR_.To jest analogiczne do wiązania row-wise kolumn i parametry.

SQL_CA_SS_TYPE_CATALOG_NAME i SQL_CA_SS_TYPE_SCHEMA_NAME można również pobrać z wykazu i skojarzone z parametrów zdefiniowanych przez użytkownika typu CLR schematu.Są to rozwiązania alternatywne w stosunku do istniejących atrybutów schematu katalogu określonego typu dla tego typu.

See Also

Concepts