Freigeben über


SQL zu C: Datum

Der Bezeichner für den ODBC-SQL-Datentyp lautet:

SQL_TYPE_DATE

In der folgenden Tabelle sind die ODBC-C-Datentypen aufgeführt, in die der Treiber SQL-Datumsdaten konvertieren kann. Eine Erläuterung der Spalten und Begriffe in der Tabelle finden Sie unter Konvertieren von Daten aus SQL in C-Datentypen.

Hinweis

Bei Zeichenkonvertierungen muss BufferLength Leerzeichen für den Null-Terminator enthalten. Eine Datumszeichenfolge ist 10 Zeichen lang (yyyy-mm-dd), sodass BufferLength mindestens 11 Byte sein muss, um abgeschnitten zu werden.

C-Typbezeichner Test * TargetValuePtr * StrLen_or_IndPtr SQLSTATE
SQL_C_CHAR PufferLength-Zeichenbytelänge>

11 <= BufferLength<= Zeichenbytelänge

BufferLength< 11
Daten

Abgeschnittene Daten

Undefiniert
10

Länge der Daten in Byte

Undefiniert
n/a

01004

22003
SQL_C_WCHAR PufferLength-Zeichenlänge>

11 <= BufferLength<= Zeichenlänge

BufferLength< 11
Daten

Abgeschnittene Daten

Undefiniert
10

Länge der Daten in Zeichen

Undefiniert
n/a

01004

22003
SQL_C_BINARY Bytelänge der Daten <= BufferLength

Bytelänge von Data >BufferLength
Daten

Undefiniert
Länge der Daten in Byte

Undefiniert
n/a

22003
SQL_C_TYPE_DATE Keine1 Daten 63 n/a
SQL_C_TYPE_TIMESTAMP Keine1 Daten2 163 n/a

1 Der Wert von BufferLength wird für diese Konvertierung ignoriert. Der Treiber geht davon aus, dass die Größe von *TargetValuePtr die Größe des C-Datentyps ist.

2 Der Treiber legt die Zeitfelder der Zeitstempelstruktur auf Null fest.

3 Dies ist die Größe des entsprechenden C-Datentyps.

Wenn der Treiber Datums-SQL-Daten in Zeichen C-Daten konvertiert, befindet sich die resultierende Zeichenfolge im Format "jjjj-mm-tt". Dieses Format ist von der Einstellung "Windows-Land/Region" nicht betroffen.