Dela via


SQL till C: Tidsstämpel

Identifieraren för tidsstämpeln ODBC SQL-datatyp är följande:

  • SQL_TYPE_TIMESTAMP

I följande tabell visas de ODBC C-datatyper som tidsstämpel sql-data kan konverteras till. En förklaring av kolumnerna och termerna i tabellen finns i Konvertera data från SQL till C-datatyper.

C-typidentifierare Test * TargetValuePtr * StrLen_or_IndPtr SQLSTATE
SQL_C_CHAR BufferLength> Längd på teckenbyte

20 <= BufferLength<= Längd på teckenbyte

BufferLength< 20
Uppgifter

Trunkerade data[b]

Odefinierad
Längden på data i byte

Längden på data i byte

Odefinierad
Inte tillämpligt

01004

22003
SQL_C_WCHAR BufferLength> Teckenlängd

20 <= BufferLength<= Teckenlängd

BufferLength< 20
Uppgifter

Trunkerade data[b]

Odefinierad
Längden på data i tecken

Längden på data i tecken

Odefinierad
Inte tillämpligt

01004

22003
SQL_C_BINARY Bytelängd för data <= BufferLength

Bytelängd för data >BufferLength
Uppgifter

Odefinierad
Längden på data i byte

Odefinierad
Inte tillämpligt

22003
SQL_C_TYPE_DATE Tidsdelen av tidsstämpeln är noll[a]

Tidsdelen av tidsstämpeln är nonzero[a]
Uppgifter

Trunkerade data[c]
6[f]

6[f]
Inte tillämpligt

01S07
SQL_C_TYPE_TIME Del sekunder av tidsstämpeln är noll[a]

Del av tidsstämpeln i bråkdels sekunder är nonzero[a]
Data[d]

Trunkerade data[d], [e]
6[f]

6[f]
Inte tillämpligt

01S07
SQL_C_TYPE_TIMESTAMP Del av tidsstämpeln i bråkdels sekunder trunkeras inte[a]

Del av tidsstämpeln i bråkdels sekunder trunkeras[a]
Data[e]

Trunkerade data[e]
16[f]

16[f]
Inte tillämpligt

01S07

[a] Värdet för BufferLength ignoreras för den här konverteringen. Drivrutinen förutsätter att storleken på *TargetValuePtr är storleken på C-datatypen.

[b] Tidsstämpelns bråksekunder trunkeras.

[c] Tidsdelen av tidsstämpeln trunkeras.

[d] Datumdelen av tidsstämpeln ignoreras.

[e] Deldelen av tidsstämpeln i bråk sekunder trunkeras.

[f] Det här är storleken på motsvarande C-datatyp.

När tidsstämpeln SQL-data konverteras till tecken C-data, är den resulterande strängen i "åååå-mm-ddhh:mm:ss[.f...]"-format, där upp till nio siffror kan användas i bråk sekunder. Det här formatet påverkas inte av inställningen För Windows-land/region. (Förutom decimaltecknet och bråksekunderna måste hela formatet användas, oavsett precisionen för sql-datatypen tidsstämpel.)