Condividi tramite


Da C a SQL: timestamp

L'identificatore per il tipo di dati ODBC C timestamp è:

SQL_C_TYPE_TIMESTAMP

Nella tabella seguente vengono illustrati i tipi di dati SQL ODBC in cui è possibile convertire i dati C timestamp. Per una spiegazione delle colonne e dei termini nella tabella, vedere Conversione di dati da C a tipi di dati SQL.

Identificatore del tipo SQL   Test SQLSTATE
SQL_CHAR

SQL_VARCHAR

SQL_LONGVARCHAR
Lunghezza >byte colonna = Lunghezza byte carattere

19 <= Lunghezza byte carattere byte colonna <

Lunghezza < byte colonna 19

Il valore dei dati non è un timestamp valido
n/d

22001

22001

22008
SQL_WCHAR

SQL_WVARCHAR

SQL_WLONGVARCHAR
Lunghezza >carattere colonna = Lunghezza carattere dei dati

19 <= Lunghezza < carattere di colonna Lunghezza carattere dei dati

Lunghezza < carattere colonna 19

Il valore dei dati non è un timestamp valido
n/d

22001

22001

22008
SQL_TYPE_DATE I campi ora sono zero

I campi ora sono diversi da zero

Il valore dei dati non contiene una data valida
n/d

22008

22007
SQL_TYPE_TIME I campi dei secondi frazionari sono zero[a]

I campi dei secondi frazionari sono diversi da zero[a]

Il valore dei dati non contiene un'ora valida
n/d

22008

22007
SQL_TYPE_TIMESTAMP I campi dei secondi frazionari non vengono troncati

I campi dei secondi frazionari vengono troncati

Il valore dei dati non è un timestamp valido
n/d

22008

22007

[a] I campi data della struttura timestamp vengono ignorati.

Per informazioni sui valori validi in una struttura SQL_C_TIMESTAMP, vedere Tipi di dati C, più indietro in questa appendice.

Quando i dati C timestamp vengono convertiti in dati SQL di tipo carattere, i dati dei caratteri risultanti si trovano in "aa-mm gg hh-:mm:ss[.f...]" formato.

Il driver ignora il valore di lunghezza/indicatore durante la conversione dei dati dal tipo di dati timestamp C e presuppone che le dimensioni del buffer di dati siano le dimensioni del tipo di dati timestamp C. Il valore di lunghezza/indicatore viene passato nell'argomento StrLen_or_Ind in SQLPutData e nel buffer specificato con l'argomento StrLen_or_IndPtr in SQLBindParameter. Il buffer di dati viene specificato con l'argomento DataPtr in SQLPutData e l'argomento ParameterValuePtr in SQLBindParameter.