Aracılığıyla paylaş


Tarih Saat Veri Türü Değişiklikleri

ODBC 3.x'te, tarih, saat ve zaman damgası SQL veri türlerinin tanımlayıcıları, sırasıyla SQL_DATE, SQL_TIME ve SQL_TIMESTAMP'ten (9, 10 ve 11 numaralı başlık dosyasındaki #define örnekleriyle) SQL_TYPE_DATE, SQL_TYPE_TIME ve SQL_TYPE_TIMESTAMP'e (91, 92 ve 93 numaralı başlık dosyasındaki #define örnekleriyle) olarak değiştirildi. karşılık gelen C türü tanımlayıcıları sırasıyla SQL_C_DATE, SQL_C_TIME ve SQL_C_TIMESTAMP SQL_C_TYPE_DATE, SQL_C_TYPE_TIME ve SQL_C_TYPE_TIMESTAMP olarak değiştirildi.

ODBC 3.x'teki SQL tarih saat veri türleri için döndürülen sütun boyutu ve ondalık basamaklar, ODBC 2.x'te bunlar için döndürülen duyarlık ve ölçekle aynıdır. Bu değerler, SQL_DESC_PRECISION ve SQL_DESC_SCALE tanımlayıcı alanlarındaki değerlerden farklıdır. (Daha fazla bilgi için bkz. Sütun Boyutu, Ondalık Basamaklar, Aktarım Oktet Uzunluğu ve Ekran Boyutu.)

Bu değişiklikler SQLDescribeCol, SQLDescribeParam ve SQLColAttribute'u etkiler; SQLBindCol, SQLBindParameter ve SQLGetData; ve SQLColumns, SQLGetTypeInfo, SQLProcedureColumns, SQLStatistics ve SQLSpecialColumns.

Aşağıdaki tabloda ODBC 3.x Sürücü Yöneticisi'nin SQLBindCol ve SQLGetData'nınTargetType bağımsız değişkenlerinde veya SQLBindParameter'ın ValueType bağımsız değişkeninde girilen tarih, saat ve zaman damgası C veri türlerinin eşlemesini nasıl gerçekleştirdiği gösterilmektedir.

Veri türü

kod girildi
2.x uygulaması

2.x sürücü
2.x uygulaması

3.x sürücü
3.x uygulaması

2.x sürücü
3.x uygulaması

3.x sürücü
SQL_C_DATE (9) Eşleme yok SQL_C_TYPE_DATE (91) Eşleme yok[1] SQL_C_TYPE_DATE (91)
SQL_C_TYPE_DATE (91) Hata (DM'den) Hata (DM'den) SQL_C_DATE (9) Haritalama yok[2]
SQL_C_TIME (10) Eşleme yok SQL_C_TYPE_TIME (92) Eşleme yok[1] SQL_C_TYPE_TIME (92)
SQL_C_TYPE_TIME (92) Hata (DM'den) Hata (DM'den) SQL_C_TIME (10) Eşleme yok[2]
SQL_C_TIMESTAMP (11) Eşleme yok SQL_C_TYPE_TIMESTAMP (93) Eşleme yok[1] SQL_C_TYPE_TIMESTAMP (93)
SQL_C_TYPE_TIMESTAMP (93) Hata (DM'den) Hata (DM'den) SQL_C_TIMESTAMP (11) Haritalama bulunmuyor[2]

[1] Bunun sonucunda, ODBC 2.x sürücüsüyle çalışan bir ODBC 3.x uygulaması, katalog işlevleri tarafından döndürülen sonuç kümelerinde döndürülen tarih, saat veya zaman damgası kodlarını kullanabilir.

[2] Bunun sonucunda, ODBC 3.x sürücüsüyle çalışan bir ODBC 3.x uygulaması, katalog işlevleri tarafından döndürülen sonuç kümelerinde döndürülen tarih, saat veya zaman damgası kodlarını kullanabilir.

Aşağıdaki tabloda ODBC 3.x Sürücü Yöneticisi'nin SQLBindParameter'ınParameterType bağımsız değişkenine veya SQLGetTypeInfo'nunDataType bağımsız değişkenine girilen tarih, saat ve zaman damgası SQL veri türlerinin eşlemesini nasıl gerçekleştirdiği gösterilmektedir.

Veri türü

kod girildi
2.x uygulaması

2.x sürücü
2.x uygulaması

3.x sürücü
3.x uygulaması

2.x sürücü
3.x uygulaması

3.x sürücü
SQL_DATE (9) Eşleme yok SQL_TYPE_DATE (91) Eşleme yok[1] SQL_TYPE_DATE (91)
SQL_TYPE_DATE (91) Hata (DM'den) Hata (DM'den) SQL_DATE (9) Eşleme yok[2]
SQL_TIME (10) Eşleme yok SQL_TYPE_TIME (92) Eşleme yok[1] SQL_TYPE_TIME (92)
SQL_TYPE_TIME (92) Hata (DM'den) Hata (DM'den) SQL_TIME (10) Eşleme yok[2]
SQL_TIMESTAMP (11) Eşleme yok SQL_TYPE_TIMESTAMP (93) Eşleme yok[1] SQL_TYPE_TIMESTAMP (93)
SQL_TYPE_TIMESTAMP (93) Hata (DM'den) Hata (DM'den) SQL_TIMESTAMP (11) Eşleme yok[2]

[1] Bunun sonucunda, ODBC 2.x sürücüsüyle çalışan bir ODBC 3.x uygulaması, katalog işlevleri tarafından döndürülen sonuç kümelerinde döndürülen tarih, saat veya zaman damgası kodlarını kullanabilir.

[2] Bunun sonucunda, ODBC 3.x sürücüsüyle çalışan bir ODBC 3.x uygulaması, katalog işlevleri tarafından döndürülen sonuç kümelerinde döndürülen tarih, saat veya zaman damgası kodlarını kullanabilir.