Appendice D: Tipi di dati

ODBC definisce due set di tipi di dati: tipi di dati SQL e tipi di dati C. I tipi di dati SQL indicano il tipo di dati archiviati nell'origine dati. I tipi di dati C indicano il tipo di dati archiviati nei buffer dell'applicazione.

I tipi di dati SQL sono definiti da ogni DBMS in base allo standard SQL-92. Per ogni tipo di dati SQL specificato nello standard SQL-92, ODBC definisce un identificatore di tipo, ovvero un valore #define passato come argomento nelle funzioni ODBC o restituito nei metadati di un set di risultati. Gli unici tipi di dati SQL-92 non supportati da ODBC sono BIT (il tipo di SQL_BIT ODBC ha caratteristiche diverse), BIT_VARYING, TIME_WITH_TIMEZONE, TIMESTAMP_WITH_TIMEZONE e NATIONAL_CHARACTER. I driver sono responsabili del mapping dei tipi di dati SQL specifici dell'origine dati agli identificatori del tipo di dati SQL ODBC e agli identificatori del tipo di dati SQL specifici del driver. Il tipo di dati SQL viene specificato nel campo SQL_DESC_CONCISE_TYPE di un descrittore di implementazione.

ODBC definisce i tipi di dati C e i corrispondenti identificatori di tipo ODBC. Un'applicazione specifica il tipo di dati C del buffer che riceverà i dati del set di risultati passando l'identificatore di tipo C appropriato nell'argomento TargetType in una chiamata a SQLBindCol o SQLGetData. Specifica il tipo C del buffer contenente un parametro di istruzione passando l'identificatore di tipo C appropriato nell'argomento ValueType in una chiamata a SQLBindParameter. Il tipo di dati C viene specificato nel campo SQL_DESC_CONCISE_TYPE di un descrittore dell'applicazione.

Nota

Non esistono tipi di dati C specifici del driver.

Ogni tipo di dati SQL corrisponde a un tipo di dati ODBC C. Prima di restituire dati dall'origine dati, il driver lo converte nel tipo di dati C specificato. Prima di inviare dati all'origine dati, il driver lo converte dal tipo di dati C specificato.

Questa appendice contiene gli argomenti seguenti.

Per una spiegazione dei tipi di dati ODBC, vedere Tipi di dati in ODBC. Per informazioni sui tipi di dati SQL specifici del driver, vedere la documentazione del driver.