Aracılığıyla paylaş


SQL'den C'ye: Tarih

ODBC SQL veri türünün tarih tanımlayıcısı:

SQL_TYPE_DATE

Aşağıdaki tabloda, sürücünün tarih SQL verilerini dönüştürebileceği ODBC C veri türleri gösterilmektedir. Tablodaki sütunların ve terimlerin açıklaması için bkz. Verileri SQL'den C Veri Türlerine Dönüştürme.

Uyarı

Karakter dönüştürmeleri için BufferLength null sonlandırıcı için boşluk içermelidir. Tarih dizesi 10 karakter uzunluğundadır (yyyy-mm-dd), bu nedenle bufferlength değerinin kesilmesini önlemek için en az 11 bayt olması gerekir.

C türü tanımlayıcısı Test * TargetValuePtr * Strlen_or_ındptr SQLSTATE
SQL_C_CHAR BufferLength> Karakter bayt uzunluğu

11 <= BufferLength<= Karakter bayt uzunluğu

BufferLength< 11
Veri

Kesilmiş veriler

Tanımsız
10

Bayt cinsinden veri uzunluğu

Tanımsız
Yok

01004

22003
SQL_C_WCHAR BufferLength> Karakter uzunluğu

11 <= BufferLength<= Karakter uzunluğu

BufferLength< 11
Veri

Kesilmiş veriler

Tanımsız
10

Karakter cinsinden veri uzunluğu

Tanımsız
Yok

01004

22003
SQL_C_BINARY Verilerin <bayt uzunluğu = BufferLength

> verilerinin bayt uzunluğu
Veri

Tanımsız
Bayt cinsinden veri uzunluğu

Tanımsız
Yok

22003
SQL_C_TYPE_DATE Hiçbiri1 Veri 63 Yok
SQL_C_TYPE_TIMESTAMP Hiçbiri1 Veri2 163 Yok

1BufferLength değeri bu dönüştürme için yoksayılır. Sürücü, *TargetValuePtr boyutunun C veri türünün boyutu olduğunu varsayar.

2 Sürücü, zaman damgası yapısının zaman alanlarını sıfır olarak ayarlar.

3 Bu, karşılık gelen C veri türünün boyutudur.

Sürücü tarih SQL verilerini C karakterine dönüştürdüğünde, sonuçta elde edilen dize "yyyy-mm-dd" biçiminde olur. Bu biçim, Windows ülke/bölge ayarından etkilenmez.