Udostępnij za pośrednictwem


Typ ODBC SQL dla tabel Valued parametry

Nowy typ ODBC SQL, SQL_SS_TABLE udostępnia obsługę wartości w tabela parametrów.

Uwagi

Nie można przekonwertować SQL_SS_TABLE innych ODBC lub SQL Server Typ danych.

Jeśli SQL_SS_TABLE jest używany jako typ danych C w ValueType Parametr SQLBindParameter, lub podjęta próba uzyskania zestaw SQL_DESC_TYPE w rekordzie aplikacji parametr deskryptora (APD) do SQL_SS_TABLE, zostanie zwrócona SQL_ERROR i diagnostyczne rekord jest generowany z SQLSTATE HY003, = "typ buforu aplikacji nieprawidłowe".

Jeśli jest SQL_DESC_TYPE zestaw parametr deskryptora rekordu SQL_SS_TABLE w rekordzie IPD i odpowiadające im aplikacji nie jest zwracany jest SQL_C_DEFAULT, SQL_ERROR i diagnostyczne rekordu jest generowany z SQLSTATE = HY003, "typ buforu aplikacji nieprawidłowe".Taka sytuacja może wystąpić z ParameterType z SQLSetDescField, SQLSetDescRec lub SQLBindParameter.

Jeśli TargetType parametr jest SQL_SS_TABLE podczas wywoływania SQLGetDataJest zwracany SQL_ERROR i diagnostyczne rekord jest generowany z SQLSTATE HY003, = "typ buforu aplikacji nieprawidłowe".

Nie można powiązać kolumna parametru wartości tabela jako typ SQL_SS_TABLE.Jeśli SQLBindParameter jest wywoływana z ParameterTypezestaw do SQL_SS_TABLE, zwracana jest SQL_ERROR i diagnostyczne rekord jest generowany z SQLSTATE = HY004 "Typ danych SQL nieprawidłowe". Taka sytuacja może również wystąpić z SQLSetDescField i SQLSetDescRec.

Wartości parametru wartości tabela kolumna mają te same opcje konwersji danych jako parametrów oraz kolumn z wynikami.

Parametr wycenione tabela może być tylko parametru wejściowego w SQL Server 2008. Jeśli nastąpi próba zestaw SQL_DESC_PARAMETER_TYPE na wartość inną niż SQL_PARAM_INPUT za pośrednictwem SQLBindParameter lub SQLSetDescFieldJest zwracana SQL_ERROR i diagnostyczne rekord zostanie dodany do instrukcja z SQLSTATE = HY105 i komunikat "nieprawidłowy parametr typu".

Parametr wycenione tabela kolumny nie można używać SQL_DEFAULT_PARAM w StrLen_or_IndPtr, ponieważ wartości domyślnych dla wierszy nie są obsługiwane przez wartości tabela parametrów. Zamiast tego aplikacji zestaw kolumna atrybut SQL_CA_SS_COL_HAS_DEFAULT_VALUE 1.Oznacza to, że kolumna mają wartości domyślne dla wszystkich wierszy.Jeśli StrLen_or_IndPtr jest ustawiona na SQL_DEFAULT_PARAM, SQLExecute lub SQLExecDirectZwraca wartość SQL_ERROR i diagnostyczne rekord zostanie dodany do instrukcja z SQLSTATE = HY090 i komunikat "Nieprawidłowa długość ciąg lub buforu".

See Also

Concepts