Lampiran A: Kode Kesalahan ODBC

Topik ini membahas nilai SQLSTATE untuk ODBC 3.x. Untuk informasi selengkapnya tentang ODBC 3.x Nilai SQLSTATE, lihat Pemetaan SQLSTATE.

SQLGetDiagRec atau SQLGetDiagField mengembalikan nilai SQLSTATE seperti yang didefinisikan oleh Open Group Data Management: Structured Query Language (SQL), Versi 2 (Maret 1995). Nilai SQLSTATE adalah string yang berisi lima karakter. Tabel berikut mencantumkan nilai SQLSTATE yang dapat dikembalikan driver untuk SQLGetDiagRec.

Nilai string karakter yang dikembalikan untuk SQLSTATE terdiri dari nilai kelas dua karakter diikuti oleh nilai subkelas tiga karakter. Nilai kelas "01" menunjukkan peringatan dan disertai dengan kode pengembalian SQL_SUCCESS_WITH_INFO. Nilai kelas selain "01," kecuali untuk kelas "IM," menunjukkan kesalahan dan disertai dengan nilai pengembalian SQL_ERROR. Kelas "IM" khusus untuk peringatan dan kesalahan yang berasal dari implementasi ODBC itu sendiri. Nilai subkelas "000" di kelas apa pun menunjukkan bahwa tidak ada subkelas untuk SQLSTATE tersebut. Penetapan nilai kelas dan subkelas ditentukan oleh SQL-92.

Catatan

Meskipun keberhasilan eksekusi fungsi biasanya ditunjukkan oleh nilai pengembalian SQL_SUCCESS, SQLSTATE 00000 juga menunjukkan keberhasilan.

SQLSTATE Kesalahan Dapat dikembalikan dari
01000 Peringatan umum Semua fungsi ODBC kecuali:

SQLError

SQLGetDiagField

SQLGetDiagRec
01001 Konflik operasi kursor SQLExecDirect

SQLExecute

SQLParamData

SQLSetPos
01002 Kesalahan pemutusan sambungan SQLDisconnect
01003 Nilai NULL dihilangkan dalam fungsi yang ditetapkan SQLExecDirect

SQLExecute

SQLParamData
01004 Data string, terpotong kanan SQLBrowseConnect

SQLBulkOperations

SQLColAttribute

SQLDataSources

SQLDescribeCol

SQLDriverConnect

SQLDrivers

SQLExecDirect

SQLExecute

SQLExtendedFetch

SQLFetch

SQLFetchScroll

SQLGetConnectAttr

SQLGetCursorName

SQLGetData

SQLGetDescField

SQLGetDescRec

SQLGetEnvAttr

SQLGetInfo

SQLGetStmtAttr

SQLNative

Sql SQLParamData

SQLPutData

SQLSetCursorName
01006 Hak istimewa tidak dicabut SQLExecDirect

SQLExecute

SQLParamData
01007 Hak istimewa tidak diberikan SQLExecDirect

SQLExecute

SQLParamData
01S00 Atribut string koneksi tidak valid SQLBrowseConnect

SQLDriverConnec
01S01 Kesalahan berturut-turut SQLBulkOperations

SQLExtendedFetch

SQLSetPos
01S02 Nilai opsi berubah SQLBrowseConnect

SQLConnect

SQLDriverConnect

SQLExecDirect

SQLExecute

SQLParamData

SQLPrepare

SQLSetConnectAttr

SQLSetDescField

SQLSetEnvAttr

SQLSetStmtAttr
01S06 Mencoba mengambil sebelum tataan hasil mengembalikan set baris pertama SQLExtendedFetch

SQLFetchScroll
01S07 Pemotongan pecahan SQLBulkOperations

SQLExecDirect

SQLExecute

SQLExtendedFetch

SQLFetch

SQLFetchScroll

SQLGetData

SQLParamData

SQLSetPos
01S08 Kesalahan saat menyimpan File DSN SQLDriverConnect
01S09 Kata kunci tidak valid SQLDriverConnect
07001 Jumlah parameter yang salah SQLExecDirect

SQLExecute
07002 Bidang COUNT salah SQLExecDirect

SQLExecute

SQLParamData
07005 Pernyataan yang disiapkan bukan spesifikasi kursor SQLColAttribute

SQLDescribeCol
07006 Pelanggaran atribut jenis data terbatas SQLBindCol

SQLBindParameter

SQLBulkOperations

SQLExecDirect

SQLExecute

SQLExtendedFetch

SQLFetch

SQLFetchScroll

SQLGetData

SQLParamData

SQLPutData

SQLSetPos
07009 Indeks deskriptor tidak valid SQLBindCol

SQLBindParameter

SQLBulkOperations

SQLColAttribute

SQLDescribeCol

SQLDescribeParam

SQLFetch

SQLFetchScroll

SQLGetData

SQLGetDescField

SQLGetDescRec

SQLParamData

SQLSetDescField

SQLSetDescRecSQLSetPos
07S01 Penggunaan parameter default tidak valid SQLExecDirect

SQLExecute

SQLParamData

SQLPutData
08001 Klien tidak dapat membuat koneksi SQLBrowseConnect

SQLConnect

SQLDriverConnect
08002 Nama koneksi yang digunakan SQLBrowseConnect

SQLConnect

SQLDriverConnect

SQLSetConnectAttr
08003 Koneksi tidak terbuka SQLAllocHandle

SQLDisconnect

SQLEndTran

SQLGetConnectAttr

SQLGetInfo

SQLNativeSql

SQLSetConnectAttr
08004 Server menolak koneksi SQLBrowseConnect

SQLConnect

SQLDriverConnect
08007 Kegagalan koneksi selama transaksi SQLEndTran
08S01 Kegagalan tautan komunikasi SQLBrowseConnect

SQLColumnPrivileges

SQLColumns

SQLConnect

SQLCopyDesc

SQLDescribeCol

SQLDescribeParam

SQLDriverConnect

SQLExecDirect

SQLExecute

SQLExtendedFetch

SQLFetch

SQLFetchScroll

SQLForeignKeys

SQLGetConnectAttr

SQLGetData

SQLGetDescField

SQLGetDescRec

SQLGetFunctions

SQLGetInfo

SQLGetTypeInfo

SQLMoreResults

SQLNativeSql

SQLNumParams

SQLNumResultCols

SQLParamData

SQLPrepare

SQLPrimaryKeys

SQLProcedureColumns

SQLProcedures

SQLPutData

SQLSetConnectAttr

SQLSetDescField

SQLSetDescRec

SQLSetEnvAttr

SQLSetStmtAttr

SQLSpecialColumns

SQLStatistics

SQLTablePrivileges

SQLTables
21S01 Sisipkan daftar nilai tidak cocok dengan daftar kolom SQLExecDirect

SQLPrepare
21S02 Tingkat tabel turunan tidak cocok dengan daftar kolom SQLBulkOperations

SQLExecDirect

SQLExecute

SQLParamData

SQLPrepare

SQLSetPos
22001 Data string, terpotong kanan SQLBulkOperations

SQLExecDirect

SQLExecute

SQLFetch

SQLFetchScroll

SQLParamData

SQLPutData

SQLSetDescField

SQLSetPos
22002 Variabel indikator diperlukan tetapi tidak disediakan SQLExecDirect

SQLExecute

SQLExtendedFetch

SQLFetch

SQLFetchScroll

SQLGetData

SQLParamData
22003 Nilai numerik di luar rentang SQLBulkOperations

SQLExecDirect

SQLExecute

SQLExtendedFetch

SQLFetch

SQLFetchScroll

SQLGetData

SQLGetInfo

SQLParamData

SQLPutData

SQLSetPos
22007 Format tanggalwaktu tidak valid SQLBulkOperations

SQLExecDirect

SQLExecute

SQLExtendedFetch

SQLFetch

SQLFetchScroll

SQLGetData

SQLParamData

SQLPutData

SQLSetPos
22008 Meluapnya bidang tanggalwaktu SQLBulkOperations

SQLExecDirect

QLParamData

SQLPutData
22012 Pembagian dengan nol SQLExecDirect

SQLExecute

SQLExtendedFetch

SQLFetch

SQLFetchScroll

SQLGetData

SQLPutData
22015 Meluapnya bidang interval SQLBulkOperations

SQLExecDirect

SQLExecute

SQLExtendedFetch

SQLFetch

SQLFetchScroll

SQLGetData

SQLParamData

SQLPutData

SQLSetPos
22018 Nilai karakter tidak valid untuk spesifikasi cast SQLBulkOperations

SQLExecDirect

SQLExecute

SQLExtendedFetch

SQLFetch

SQLFetchScroll

SQLGetData

SQLParamData

SQLPutData

SQLSetPos
22019 Karakter escape tidak valid SQLExecDirect

SQLExecute

SQLPrepare
22025 Urutan escape tidak valid SQLExecDirect

SQLExecute

SQLPrepare
22026 Data string, ketidakcocokan panjang SQLParamData
23000 Pelanggaran batasan integritas SQLBulkOperations

SQLExecDirect

SQLExecute

SQLParamData

SQLSetPos
24000 Status kursor tidak valid SQLBulkOperations

SQLCloseCursor

SQLColumnPrivileges

SQLColumns

SQLExecDirect

SQLExecute

SQLExtendedFetch

SQLFetch

SQLFetchScroll

SQLForeignKeys

SQLGetData

SQLGetStmtAttr

SQLGetTypeInfo

SQLNativeSql

SQLPrepare

SQLPrimaryKeys

SQLProcedureColumns

SQLProcedures

SQLSetConnectAttr

SQLSetCursorName

SQLSetPos

SQLSetStmtAttr

SQLSpecialColumns

SQLStatistics

SQLTablePrivileges

SQLTables
25000 Status transaksi tidak valid SQLDisconnect
25S01 Status transaksi SQLEndTran
25S02 Transaksi masih aktif SQLEndTran
25S03 Transaksi digulung balik SQLEndTran
28000 Spesifikasi otorisasi tidak valid SQLBrowseConnect

SQLConnect

SQLDriverConnect
34000 Nama kursor tidak valid SQLExecDirect

SQLPrepare

SQLSetCursorName
3C000 Nama kursor duplikat SQLSetCursorName
3D000 Nama katalog tidak valid SQLExecDirect

SQLPrepare

SQLSetConnectAttr
3F000 Nama skema tidak valid SQLExecDirect

SQLPrepare
40001 Kegagalan serialisasi SQLBulkOperations

SQLColumnPrivileges

SQLColumns

SQLEndTran

SQLExecDirect

SQLExecute

SQLFetch

SQLFetchScroll

SQLForeignKeys

SQLGetTypeInfo

SQLMoreResults

SQLParamData

SQLPrimaryKeys

SQLProcedureColumns

SQLProcedures

SQLSetPos

SQLSpecialColumns

SQLStatistics

SQLTablePrivileges

SQLTables
40002 Pelanggaran batasan integritas SQLEndTran
40003 Penyelesaian pernyataan tidak diketahui SQLBulkOperations

SQLColumnPrivileges

SQLColumns

SQLExecDirect

SQLExecute

SQLFetch

SQLFetchScroll

SQLForeignKeys

SQLGetTypeInfo

SQLMoreResults

SQLPrimaryKeys

SQLProcedureColumns

SQLProcedures

SQLParamData

SQLSetPos

SQLSpecialColumns

SQLStatistics

SQLTablePrivileges

SQLTables
42000 Kesalahan sintaks atau pelanggaran akses SQLBulkOperations

SQLExecDirect

SQLExecute

SQLParamData

SQLPrepare

SQLSetPos
42S01 Tabel dasar atau tampilan sudah ada SQLExecDirect

SQLPrepare
42S02 Tabel dasar atau tampilan tidak ditemukan SQLExecDirect

SQLPrepare
42S11 Indeks sudah ada SQLExecDirect

SQLPrepare
42S12 Indeks tidak ditemukan SQLExecDirect

SQLPrepare
42S21 Kolom sudah ada SQLExecDirect

SQLPrepare
42S22 Kolom tidak ditemukan SQLExecDirect

SQLPrepare
44000 DENGAN PELANGGARAN OPSI PEMERIKSAAN SQLBulkOperations

SQLExecDirect

SQLExecute

SQLParamData

SQLSetPos
HY000 Kesalahan umum Semua fungsi ODBC kecuali:

SQLError

SQLGetDiagField

SQLGetDiagRec
HY001 Kesalahan alokasi memori Semua fungsi ODBC kecuali:

SQLError

SQLGetDiagField

SQLGetDiagRec
HY003 Jenis buffer aplikasi tidak valid SQLBindCol

SQLBindParameter

SQLGetData
HY004 Tipe data SQL tidak valid SQLBindParameter

SQLGetTypeInfo
HY007 Pernyataan terkait tidak disiapkan SQLCopyDesc

SQLGetDescField

SQLGetDescRec
HY008 Operasi dibatalkan Semua fungsi ODBC yang dapat diproses secara asinkron:

SQLBrowseConnect

SQLBulkOperations

SQLColAttribute

SQLColumnPrivileges

SQLColumns

SQLConnect

SQLDescribeCol

SQLDescribeParam

SQLDisconnect

SQLDriverConnect

SQLEndTran

SQLExecDirect

SQLExecute

SQLExtendedFetch

SQLFetch

SQLFetchScroll

SQLForeignKeys

SQLGetData

SQLGetTypeInfo

SQLMoreResults

SQLNumParams

SQLNumResultCols

SQLParamData

SQLPrepare

SQLPrimaryKeys

SQLProcedureColumns

SQLProcedures

SQLPutData

SQLSetConnectAttr

SQLSetPos

SQLSpecialColumns

SQLStatistics

SQLTablePrivileges

SQLTables
HY009 Penggunaan pointer null tidak valid SQLAllocHandle

SQLBindParameter

SQLBulkOperations

SQLColumnPrivileges

SQLColumns

SQLExecDirect

SQLForeignKeys

SQLGetCursorName

SQLGetData

SQLGetFunctions

SQLNativeSql

SQLPrepare

SQLPrimaryKeys

SQLProcedureColumns

SQLProcedures

SQLPutData

SQLSetConnectAttr

SQLSetCursorName

SQLSetEnvAttr

SQLSetStmtAttr

SQLSpecialColumns

SQLStatistics

SQLTablePrivileges

SQLTables
HY010 Kesalahan urutan fungsi SQLAllocHandle

SQLBindCol

SQLBindParameter

SQLBulkOperations

SQLCloseCursor

SQLColAttribute

SQLColumnPrivileges

SQLColumns

SQLCopyDesc

SQLDescribeCol

SQLDescribeParam

SQLDisconnect

SQLEndTran

SQLExecDirect

SQLExecute

SQLExtendedFetch

SQLFetch

SQLFetchScroll

SQLForeignKeys

SQLFreeHandle

SQLFreeStmt

SQLGetConnectAttr

SQLGetCursorName

SQLGetData

SQLGetDescField

SQLGetDescRec

SQLGetFunctions

SQLGetStmtAttr

SQLGetTypeInfo

SQLMoreResults

SQLNumParams

SQLNumResultCols

SQLParamData

SQLPrepare

SQLPrimaryKeys

SQLProcedureColumns

SQLProcedures

SQLPutData

SQLRowCount

SQLSetConnectAttr

SQLSetCursorName

SQLSetDescField

SQLSetEnvAttr

SQLSetDescRec

SQLSetPos

SQLSetStmtAttr

SQLSpecialColumns

SQLStatistics

SQLTablePrivileges

SQLTables
HY011 Atribut tidak dapat diatur sekarang SQLBulkOperations

SQLParamData

QLSetPos

SQLSetStmtAttr
HY012 Kode operasi transaksi tidak valid SQLEndTran
HY013 Kesalahan manajemen memori Semua fungsi ODBC kecuali:

SQLGetDiagField

SQLGetDiagRec
HY014 Batas jumlah handel terlampaui SQLAllocHandle
HY015 Tidak ada nama kursor yang tersedia SQLGetCursorName
HY016 Tidak dapat mengubah deskriptor baris implementasi SQLCopyDesc

SQLSetDescField

SQLSetDescRec
HY017 Penggunaan handel deskriptor yang dialokasikan secara otomatis tidak valid SQLFreeHandle

SQLSetStmtAttr
HY018 Permintaan pembatalan yang ditolak server SQLCancel
HY019 Data non-karakter dan non-biner yang dikirim dalam potongan-potongan SQLPutData
HY020 Mencoba menggabungkan nilai null SQLPutData
HY021 Informasi deskriptor yang tidak konsisten SQLBindParameter

SQLCopyDesc

SQLGetDescField

SQLSetDescField

SQLSetDescRec
HY024 Nilai atribut tidak valid SQLSetConnectAttr

SQLSetEnvAttr

SQLSetStmtAttr
HY090 String atau panjang buffer tidak valid SQLBindCol

SQLBindParameter

SQLBrowseConnect

SQLBulkOperations

SQLColAttribute

SQLColumnPrivileges

SQLColumns

SQLConnect

SQLDataSources

SQLDescribeCol

SQLDriverConnect

SQLDrivers

SQLExecDirect

SQLExecute

SQLFetch

SQLFetchScroll

SQLForeignKeys

SQLGetConnectAttr

SQLGetCursorName

SQLGetData

SQLGetDescField

SQLGetInfo

SQLGetStmtAttr

SQLNativeSql

SQLParamData

SQLPrepare

SQLPrimaryKeys

SQLProcedureColumns

SQLProcedures

SQLPutData

SQLSetConnectAttr

SQLSetCursorName

SQLSetDescField

SQLSetDescRec

SQLSetEnvAttr

SQLSetStmtAttr

SQLSetPos

SQLSpecialColumns

SQLStatistics

SQLTablePrivileges

SQLTables
HY091 Pengidentifikasi bidang deskriptor tidak valid SQLColAttribute

SQLGetDescField

SQLSetDescField
HY092 Pengidentifikasi atribut/opsi tidak valid SQLAllocHandle

QLBulkOperations

SQLCopyDesc

SQLDriverConnect

SQLEndTran

SQLFreeStmt

SQLGetConnectAttr

SQLGetEnvAttr

QLParamData

SQLSetConnectAttr

SQLSetDescField

SQLSetEnvAttr

SQLSetPos

SQLSetStmtAttr
HY095 Tipe fungsi di luar rentang SQLGetFunctions
HY096 Tipe informasi tidak valid SQLGetInfo
HY097 Tipe kolom di luar rentang SQLSpecialColumns
HY098 Jenis cakupan di luar rentang SQLSpecialColumns
HY099 Tipe nullable di luar rentang SQLSpecialColumns
HY100 Jenis opsi keunikan di luar rentang SQLStatistics
HY101 Jenis opsi akurasi di luar rentang SQLStatistics
HY103 Kode pengambilan tidak valid SQLDataSources

SQLDrivers
HY104 Presisi atau nilai skala tidak valid SQLBindParameter
HY105 Jenis parameter tidak valid SQLBindParameter

SQLExecDirect

SQLExecute

SQLParamData

SQLSetDescField
HY106 Ambil jenis di luar rentang SQLExtendedFetch

SQLFetchScroll
HY107 Nilai baris di luar rentang SQLExtendedFetch

SQLFetch

SQLFetchScroll

SQLSetPos
HY109 Posisi kursor tidak valid SQLExecDirect

SQLExecute

SQLGetData

SQLGetStmtAttr

SQLNativeSql

SQLParamData

SQLSetPos
HY110 Penyelesaian driver tidak valid SQLDriverConnect
HY111 Nilai marka buku tidak valid SQLExtendedFetch

SQLFetchScroll
HYC00 Fitur opsional tidak diimplementasikan SQLBindCol

SQLBindParameter

SQLBulkOperations

SQLColAttribute

SQLColumnPrivileges

SQLColumns

SQLDriverConnect

SQLEndTran

SQLExecDirect

SQLExecute

SQLExtendedFetch

SQLFetch

SQLFetchScroll

SQLForeignKeys

SQLGetConnectAttr

SQLGetData

SQLGetEnvAttr

SQLGetInfo

SQLGetStmtAttr

SQLGetTypeInfo

SQLParamData

SQLPrepare

SQLPrimaryKeys

SQLProcedureColumns

SQLProcedures

SQLSetConnectAttr

SQLSetEnvAttr

SQLSetPos

SQLSetStmtAttr

SQLSpecialColumns

SQLStatistics

SQLTablePrivileges

SQLTables
HYT00 Waktu habis kedaluwarsa SQLBrowseConnect

SQLBulkOperations

SQLColumnPrivileges

SQLColumns

SQLConnect

SQLDriverConnect

SQLExecDirect

SQLExecute

SQLExtendedFetch

SQLForeignKeys

SQLGetTypeInfo

SQLParamData

SQLPrepare

SQLPrimaryKeys

SQLProcedureColumns

SQLProcedures

SQLSetPos

SQLSpecialColumns

SQLStatistics

SQLTablePrivileges

SQLTables
HYT01 Kesalahan waktu habis koneksi kedaluwarsa Semua fungsi ODBC kecuali:

SQLDrivers

SQLDataSources

SQLGetEnvAttr

SQLSetEnvAttr
IM001 Driver tidak mendukung fungsi ini Semua fungsi ODBC kecuali:

SQLAllocHandle

SQLDataSources

SQLDrivers

SQLFreeHandle

SQLGetFunctions
IM002 Nama sumber data tidak ditemukan dan tidak ada driver default yang ditentukan SQLBrowseConnect

SQLConnect

SQLDriverConnect
IM003 Pengandar yang ditentukan tidak dapat dimuat SQLBrowseConnect

SQLConnect

SQLDriverConnect
IM004 SQLAllocHandle driver pada SQL_HANDLE_ENV gagal SQLBrowseConnect

SQLConnect

SQLDriverConnect
IM005 SQLAllocHandle driver pada SQL_HANDLE_DBC gagal SQLBrowseConnect

SQLConnect

SQLDriverConnect
IM006 SQLSetConnectAttr driver gagal SQLBrowseConnect

SQLConnect

SQLDriverConnect
IM007 Tidak ada sumber data atau driver yang ditentukan; dialog dilarang SQLDriverConnect
IM008 Dialog gagal SQLDriverConnect
IM009 Tidak dapat memuat DLL terjemahan SQLBrowseConnect

SQLConnect

SQLDriverConnect

SQLSetConnectAttr
IM010 Nama sumber data terlalu panjang SQLBrowseConnect

SQLConnect

SQLDriverConnect
IM011 Nama driver terlalu panjang SQLBrowseConnect

SQLDriverConnect
IM012 Kesalahan sintaks kata kunci DRIVER SQLBrowseConnect

SQLDriverConnect
IM013 Lacak kesalahan file Semua fungsi ODBC.
IM014 Nama DSN File tidak valid SQLDriverConnect
IM015 Sumber data file rusak SQLDriverConnect