SQL ke C: Interval Tahun Bulan
Pengidentifikasi untuk jenis data ODBC SQL interval bulanan adalah sebagai berikut:
- SQL_INTERVAL_MONTH
- SQL_INTERVAL_YEAR
- SQL_INTERVAL_YEAR_TO_MONTH
Tabel berikut ini memperlihatkan tipe data ODBC C tempat data SQL interval bulanan tahunan dapat dikonversi. Untuk penjelasan tentang kolom dan istilah dalam tabel, lihat Mengonversi Data dari SQL ke Jenis Data C.
Pengidentifikasi tipe C | Uji | TargetValuePtr | StrLen_or_IndPtr | SQLSTATE |
---|---|---|---|---|
SQL_C_INTERVAL_MONTH[a] SQL_C_INTERVAL_YEAR[a] SQL_C_INTERVAL_YEAR_TO_MONTH[a] |
Bagian bidang berikutnya tidak terpotong Bagian bidang berikutnya terpotong Presisi target terdepan tidak cukup besar untuk menyimpan data dari sumber |
Data Data terpotong Tidak terdefinisi |
Panjang data dalam byte Panjang data dalam byte Tidak terdefinisi |
n/a 01S07 22015 |
SQL_C_STINYINT[b] SQL_C_UTINYINT[b] SQL_C_USHORT[b] SQL_C_SHORT[b] SQL_C_SLONG[b] SQL_C_ULONG[b] SQL_C_NUMERIC[b] SQL_C_BIGINT[b] |
Presisi interval adalah bidang tunggal dan data dikonversi tanpa pemotongan Presisi interval adalah bidang tunggal dan utuh terpotong Presisi interval bukan bidang tunggal |
Data Data terpotong Tidak terdefinisi |
Ukuran tipe data C Panjang data dalam byte Ukuran tipe data C |
n/a 22003 22015 |
SQL_C_BINARY | Panjang byte data <= BufferLength Panjang byte data >BufferLength |
Data Tidak terdefinisi |
Panjang data dalam byte Tidak terdefinisi |
n/a 22003 |
SQL_C_CHAR | Panjang byte karakter <BufferLength Jumlah keseluruhan (dibandingkan dengan digit <pecahan) BufferLength Jumlah digit keseluruhan (dibandingkan dengan pecahan) >= BufferLength |
Data Data terpotong Tidak terdefinisi |
Ukuran tipe data C Ukuran tipe data C Tidak terdefinisi |
n/a 01004 22003 |
SQL_C_WCHAR | Panjang karakter <BufferLength Jumlah keseluruhan (dibandingkan dengan digit <pecahan) BufferLength Jumlah digit keseluruhan (dibandingkan dengan pecahan) >= BufferLength |
Data Data terpotong Tidak terdefinisi |
Ukuran tipe data C Ukuran tipe data C Tidak terdefinisi |
n/a 01004 22003 |
[a] Jenis SQL interval bulan-tahun dapat dikonversi ke jenis C interval bulan tahunan apa pun.
[b] Jika presisi interval adalah bidang tunggal (satu dari TAHUN atau BULAN), jenis SQL interval dapat dikonversi ke numerik yang tepat (SQL_C_STINYINT, SQL_C_UTINYINT, SQL_C_USHORT, SQL_C_SHORT, SQL_C_SLONG, SQL_C_ULONG, atau SQL_C_NUMERIC).
Konversi default
Konversi default jenis SQL interval adalah ke jenis data interval C yang sesuai. Aplikasi kemudian mengikat kolom atau parameter (atau mengatur bidang SQL_DESC_DATA_PTR dalam catatan ARD yang sesuai) untuk menunjuk ke struktur SQL_INTERVAL_STRUCT yang diinisialisasi (atau meneruskan penunjuk ke struktur SQL_ INTERVAL_STRUCT sebagai argumen TargetValuePtr dalam panggilan ke SQLGetData).