Transisi Pernyataan
Pernyataan ODBC memiliki status berikut.
Provinsi | Deskripsi |
---|---|
S0 | Pernyataan tidak dialokasikan. (Status koneksi harus C4, C5, atau C6. Untuk informasi selengkapnya, lihat Transisi Koneksi.) |
S1 | Pernyataan yang dialokasikan. |
S2 | Pernyataan yang disiapkan. Tidak ada tataan hasil yang akan dibuat. |
S3 | Pernyataan yang disiapkan. Kumpulan hasil (mungkin kosong) akan dibuat. |
S4 | Pernyataan dijalankan dan tidak ada tataan hasil yang dibuat. |
S5 | Pernyataan dijalankan dan kumpulan hasil (mungkin kosong) dibuat. Kursor terbuka dan diposisikan sebelum baris pertama kumpulan hasil. |
S6 | Kursor diposisikan dengan SQLFetch atau SQLFetchScroll. |
S7 | Kursor diposisikan dengan SQLExtendedFetch. |
S8 | Fungsi membutuhkan data. SQLParamData belum dipanggil. |
S9 | Fungsi membutuhkan data. SQLPutData belum dipanggil. |
S10 | Fungsi membutuhkan data. SQLPutData telah dipanggil. |
S11 | Masih dieksekusi. Pernyataan dibiarkan dalam status ini setelah fungsi yang dijalankan secara asinkron mengembalikan SQL_STILL_EXECUTING. Pernyataan sementara dalam status ini sementara fungsi apa pun yang menerima handel pernyataan sedang dijalankan. Tempat tinggal sementara di negara bagian S11 tidak ditampilkan dalam tabel status apa pun kecuali tabel status untuk SQLCancel. Saat pernyataan sementara dalam status S11, fungsi dapat dibatalkan dengan memanggil SQLCancel dari utas lain. |
S12 | Eksekusi asinkron dibatalkan. Di S12, aplikasi harus memanggil fungsi yang dibatalkan hingga mengembalikan nilai selain SQL_STILL_EXECUTING. Fungsi berhasil dibatalkan hanya jika fungsi mengembalikan SQL_ERROR dan SQLSTATE HY008 (Operasi dibatalkan). Jika mengembalikan nilai lain, seperti SQL_SUCCESS, operasi pembatalan gagal dan fungsi dijalankan secara normal. |
Status S2 dan S3 dikenal sebagai status yang disiapkan, menyatakan S5 hingga S7 sebagai status kursor, menyatakan S8 hingga S10 sebagai status data kebutuhan, dan menyatakan S11 dan S12 sebagai status asinkron. Di setiap grup ini, transisi ditampilkan secara terpisah hanya ketika berbeda untuk setiap status dalam grup; dalam kebanyakan kasus, transisi untuk setiap status di setiap grup sama.
Tabel berikut menunjukkan bagaimana setiap fungsi ODBC memengaruhi status pernyataan.
SQLAllocHandle
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
--[1], [5], [6] | --[5] | --[5] | --[5] | --[5] | --[5] | --[5] |
--[2], [5] | --[5] | --[5] | --[5] | --[5] | --[5] | --[5] |
S1[3] | --[5] | --[5] | --[5] | --[5] | --[5] | --[5] |
--[4], [5] | --[5] | --[5] | --[5] | --[5] | --[5] | --[5] |
[1] Baris ini menunjukkan transisi ketika HandleType SQL_HANDLE_ENV.
[2] Baris ini menunjukkan transisi ketika HandleType SQL_HANDLE_DBC.
[3] Baris ini menunjukkan transisi ketika HandleType SQL_HANDLE_STMT.
[4] Baris ini menunjukkan transisi ketika HandleType SQL_HANDLE_DESC.
[5] Memanggil SQLAllocHandle dengan OutputHandlePtr menunjuk ke handel valid yang menimpa yang menangani tanpa memperhatikan konten sebelumnya untuk handel tersebut dan dapat menyebabkan masalah bagi driver ODBC. Ini adalah pemrograman aplikasi ODBC yang salah untuk memanggil SQLAllocHandle dua kali dengan variabel aplikasi yang sama yang ditentukan untuk *OutputHandlePtr tanpa memanggil SQLFreeHandle untuk membebaskan handel sebelum merealokasinya. Menimpa handel ODBC dengan cara seperti itu dapat menyebabkan perilaku atau kesalahan yang tidak konsisten pada bagian driver ODBC.
SQLBindCol
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | -- | -- | -- | -- | HY010 | HY010 |
SQLBindParameter
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | -- | -- | -- | -- | HY010 | HY010 |
SQLBrowseConnect, SQLConnect, dan SQLDriverConnect
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
08002 | 08002 | 08002 | 08002 | 08002 | 08002 | 08002 |
SQLBulkOperations
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | HY010 | HY010 | 24000 | Lihat tabel berikutnya | HY010 | NS [c] HY010 o |
SQLBulkOperations (Status Kursor)
S5 Dibuka |
S6 SQLFetch atau SQLFetchScroll |
S7 SQLExtendedFetch |
---|---|---|
-- [s] S8 [d] S11 [x] | -- [s] S8 [d] S11 [x] | HY010 |
SQLCancel
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | -- | -- | -- | -- | S1[1] S2 [nr] dan [2] S3 [r]dan [2] S5[3] dan [5] S6([3] atau [4]) dan [6] S7[4] dan [7] | Lihat tabel berikutnya |
[1] SQLExecDirect mengembalikan SQL_NEED_DATA.
[2] SQLExecute mengembalikan SQL_NEED_DATA.
[3] SQLBulkOperations mengembalikan SQL_NEED_DATA.
[4] SQLSetPos mengembalikan SQL_NEED_DATA.
[5] SQLFetch, SQLFetchScroll, atau SQLExtendedFetch belum dipanggil.
[6] SQLFetch atau SQLFetchScroll telah dipanggil.
[7] SQLExtendedFetch telah dipanggil.
SQLCancel (Status Asinkron)
S11 Masih mengeksekusi |
S12 Asinkron dibatalkan |
---|---|
NS[1] S12[2] | S12 |
[1] Pernyataan tersebut sementara dalam status S11 saat fungsi sedang dijalankan. SQLCancel dipanggil dari utas yang berbeda.
[2] Pernyataan tersebut dinyatakan S11 karena fungsi yang disebut dikembalikan secara asinkron SQL_STILL_EXECUTING.
SQLCloseCursor
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | 24000 | 24000 | 24000 | S1 [np] S3 [p] | HY010 | HY010 |
SQLColAttribute
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | HY010 | Lihat tabel berikutnya | 24000 | -- [s] S11 [x] | HY010 | NS [c] HY010 o |
SQLColAttribute (Status Yang Disiapkan)
S2 Tidak Ada Hasil |
S3 Hasil |
---|---|
--[1] 07005[2] | -- [s] S11 x |
[1] FieldIdentifier SQL_DESC_COUNT.
[2] FieldIdentifier tidak SQL_DESC_COUNT.
SQLColumnPrivileges, SQLColumns, SQLForeignKeys, SQLGetTypeInfo, SQLPrimaryKeys, SQLProcedureColumns, SQLProcedures, SQLSpecialColumns, SQLStatistics, SQLTablePrivileges, dan SQLTables
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
(IH) | S5 [s] S11 [x] | S1 [e] S5 [s] S11 [x] | S1 [e] dan [1] S5 [s] dan [1] S11 [x] dan [1] 24000[2] | Lihat tabel berikutnya | HY010 | NS [c] HY010 o |
[1] Hasil saat ini adalah hasil terakhir atau satu-satunya, atau tidak ada hasil saat ini. Untuk informasi selengkapnya tentang beberapa hasil, lihat Beberapa Hasil.
[2] Hasil saat ini bukan hasil terakhir.
SQLColumnPrivileges, SQLColumns, SQLForeignKeys, SQLGetTypeInfo, SQLPrimaryKeys, SQLProcedureColumns, SQLProcedures, SQLSpecialColumns, SQLStatistics, SQLTablePrivileges, dan SQLTables (Status Kursor)
S5 Dibuka |
S6 SQLFetch atau SQLFetchScroll |
S7 SQLExtendedFetch |
---|---|---|
24000 | 24000[1] | 24000 |
[1] Kesalahan ini dikembalikan oleh Driver Manager jika SQLFetch atau SQLFetchScroll belum mengembalikan SQL_NO_DATA dan dikembalikan oleh driver jika SQLFetch atau SQLFetchScroll telah mengembalikan SQL_NO_DATA.
SQLCopyDesc
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH[1] | -- | -- | -- | -- | HY010 | NS [c] dan [3] HY010 [o] atau [4] |
IH[2] | HY010 | Lihat tabel berikutnya | 24000 | -- [s] S11 x | HY010 | NS [c] dan [3] HY010 [o] atau [4] |
[1] Baris ini menunjukkan transisi ketika argumen SourceDescHandle adalah ARD, APD, atau IPD.
[2] Baris ini menunjukkan transisi ketika argumen SourceDescHandle adalah IRD.
[3] Argumen SourceDescHandle dan TargetDescHandle sama seperti dalam fungsi SQLCopyDesc yang berjalan secara asinkron.
[4] Argumen SourceDescHandle atau argumen TargetDescHandle (atau keduanya) berbeda dari dalam fungsi SQLCopyDesc yang berjalan secara asinkron.
SQLCopyDesc (Status Yang Disiapkan)
S2 Tidak Ada Hasil |
S3 Hasil |
---|---|
24000[1] | -- [s] S11 [x] |
[1] Baris ini memperlihatkan transisi saat argumen SourceDescHandle adalah IRD.
SQLDataSources dan SQLDrivers
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
-- | -- | -- | -- | -- | -- | -- |
SQLDescribeCol
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | HY010 | Lihat tabel berikutnya | 24000 | -- [s] S11 [x] | HY010 | NS [c] HY010 o |
SQLDescribeCol (Status Yang Disiapkan)
S2 Tidak Ada Hasil |
S3 Hasil |
---|---|
07005 | -- [s] S11 [x] |
SQLDescribeParam
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | HY010 | -- [s] S11 [x] | HY010 | HY010 | HY010 | NS [c] HY010 [o] |
SQLDisconnect
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
--[1] | S0[1] | S0[1] | S0[1] | S0[1] | (HY010) | (HY010) |
[1] Memanggil SQLDisconnect membebaskan semua pernyataan yang terkait dengan koneksi. Selain itu, ini mengembalikan status koneksi ke C2; status koneksi harus C4 sebelum status pernyataan adalah S0.
SQLEndTran
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
-- | -- | --[2] atau [3] S1[1] | --[3] S1 [np] dan ([1] atau [2]) S1 [p] dan [1] S2 [p] dan [2] | --[3] S1 [np] dan ([1] atau [2]) S1 [p] dan [1] S3 [p] dan [2] | (HY010) | (HY010) |
[1] Argumen CompletionType SQL_COMMIT dan SQLGetInfo mengembalikan SQL_CB_DELETE untuk jenis informasi SQL_CURSOR_COMMIT_BEHAVIOR, atau argumen CompletionType SQL_ROLLBACK dan SQLGetInfo mengembalikan SQL_CB_DELETE untuk jenis informasi SQL_CURSOR_ROLLBACK_BEHAVIOR.
[2] Argumen CompletionType SQL_COMMIT dan SQLGetInfo mengembalikan SQL_CB_CLOSE untuk jenis informasi SQL_CURSOR_COMMIT_BEHAVIOR, atau argumen CompletionType SQL_ROLLBACK dan SQLGetInfo mengembalikan SQL_CB_CLOSE untuk jenis informasi SQL_CURSOR_ROLLBACK_BEHAVIOR.
[3] Argumen CompletionType SQL_COMMIT dan SQLGetInfo mengembalikan SQL_CB_PRESERVE untuk jenis informasi SQL_CURSOR_COMMIT_BEHAVIOR, atau argumen CompletionType SQL_ROLLBACK dan SQLGetInfo mengembalikan SQL_CB_PRESERVE untuk jenis informasi SQL_CURSOR_ROLLBACK_BEHAVIOR.
SQLExecDirect
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
(IH) | S4 [s] dan [nr] S5 [s] dan [r] S8 [d] S11 [x] | -- [e] dan [1] S1 [e] dan [2] S4 [s] dan [nr] S5 [s] dan [r] S8 [d] S11 [x] | -- [e], [1], dan [3] S1 [e], [2], dan [3] S4 [s], [nr], dan [3] S5 [s], [r], dan [3] S8 [d] dan [3] S11 [x] dan [3] 24000 [4] | Lihat tabel berikutnya | HY010 | NS [c] HY010 [o] |
[1] Kesalahan dikembalikan oleh Manajer Driver.
[2] Kesalahan tidak dikembalikan oleh Manajer Driver.
[3] Hasil saat ini adalah hasil terakhir atau satu-satunya, atau tidak ada hasil saat ini. Untuk informasi selengkapnya tentang beberapa hasil, lihat Beberapa Hasil.
[4] Hasil saat ini bukan hasil terakhir.
SQLExecDirect (Status Kursor)
S5 Dibuka |
S6 SQLFetch atau SQLFetchScroll |
S7 SQLExtendedFetch |
---|---|---|
24000 | 24000 [1] | 24000 |
[1] Kesalahan ini dikembalikan oleh Driver Manager jika SQLFetch atau SQLFetchScroll belum mengembalikan SQL_NO_DATA, dan dikembalikan oleh driver jika SQLFetch atau SQLFetchScroll telah mengembalikan SQL_NO_DATA.
SQLExecute
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
(IH) | (HY010) | Lihat tabel berikutnya | S2 [e], p, dan [1] S4 [s], [p], [nr], dan [1] S5 [s], [p], [r], dan [1] S8 [d], [p], dan [1] S11 [x], [p], dan [1] 24000 [p] dan [2] HY010 [np] | Lihat tabel status kursor | HY010 | NS [c] HY010 [o] |
[1] Hasil saat ini adalah hasil terakhir atau satu-satunya, atau tidak ada hasil saat ini. Untuk informasi selengkapnya tentang beberapa hasil, lihat Beberapa Hasil.
[2] Hasil saat ini bukan hasil terakhir.
SQLExecute (Status Yang Disiapkan)
S2 Tidak Ada Hasil |
S3 Hasil |
---|---|
S4 [s] S8 [d] S11 [x] | S5 [s] S8 [d] S11 [x] |
SQLExecute (Status Kursor)
S5 Dibuka |
S6 SQLFetch atau SQLFetchScroll |
S7 SQLExtendedFetch |
---|---|---|
24000 [p] HY010 [np] | 24000 [p], [1] HY010 [np] | 24000 [p] HY010 [np] |
[1] Kesalahan ini dikembalikan oleh Driver Manager jika SQLFetch atau SQLFetchScroll belum mengembalikan SQL_NO_DATA, dan dikembalikan oleh driver jika SQLFetch atau SQLFetchScroll telah mengembalikan SQL_NO_DATA.
SQLExtendedFetch
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | S1010 | S1010 | 24000 | Lihat tabel berikutnya | S1010 | NS [c] S1010 [o] |
SQLExtendedFetch (Status Kursor)
S5 Dibuka |
S6 SQLFetch atau SQLFetchScroll |
S7 SQLExtendedFetch |
---|---|---|
S7 [s] atau [nf] S11 [x] | S1010 | -- [s] atau [nf] S11 [x] |
SQLFetch dan SQLFetchScroll
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | HY010 | HY010 | 24000 | Lihat tabel berikutnya | HY010 | NS [c] HY010 [o] |
SQLFetch dan SQLFetchScroll (Status kursor)
S5 Dibuka |
S6 SQLFetch atau SQLFetchScroll |
S7 SQLExtendedFetch |
---|---|---|
S6 [s] atau [nf] S11 [x] | -- [s] atau [nf] S11 [x] | HY010 |
SQLFreeHandle
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
-- [1] | HY010 | HY010 | HY010 | HY010 | HY010 | HY010 |
IH [2] | S0 | S0 | S0 | S0 | HY010 | HY010 |
-- [3] | -- | -- | -- | -- | -- | -- |
[1] Baris ini menunjukkan transisi ketika HandleType SQL_HANDLE_ENV atau SQL_HANDLE_DBC.
[2] Baris ini menunjukkan transisi ketika HandleType SQL_HANDLE_STMT.
[3] Baris ini menunjukkan transisi ketika HandleType SQL_HANDLE_DESC dan deskriptor dialokasikan secara eksplisit.
SQLFreeStmt
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH [1] | -- | -- | S1 [np] S2 [p] | S1 [np] S3 [p] | HY010 | HY010 |
IH [2] | -- | -- | -- | -- | HY010 | HY010 |
[1] Baris ini menunjukkan transisi ketika Option SQL_CLOSE.
[2] Baris ini menunjukkan transisi ketika Option SQL_UNBIND atau SQL_RESET_PARAMS. Jika argumen Opsi SQL_DROP dan driver yang mendasarinya adalah driver ODBC 3*.x*, Manajer Driver memetakan ini ke panggilan ke SQLFreeHandle dengan HandleType diatur ke SQL_HANDLE_STMT. Untuk informasi selengkapnya, lihat tabel transisi untuk SQLFreeHandle.
SQLGetConnectAttr
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
-- | -- | -- | -- | -- | -- | -- |
SQLGetCursorName
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | -- | -- | -- | -- | HY010 | HY010 |
SQLGetData
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | HY010 | HY010 | 24000 | Lihat tabel berikutnya | HY010 | NS [c] HY010 [o] |
SQLGetData (Status Kursor)
S5 Dibuka |
S6 SQLFetch atau SQLFetchScroll |
S7 SQLExtendedFetch |
---|---|---|
24000 | -- [s] atau [nf] S11 [x] 24000 [b] HY109 [i] | -- [s] atau [nf] S11 [x] 24000 [b] HY109 [i] |
SQLGetDescField dan SQLGetDescRec
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | -- [1] atau [2] HY010 [3] | Lihat tabel berikutnya | -- [1] atau [2] 24000 [3] | -- [1], [2], atau [3] S11 [3] dan [x] | HY010 | NS [c] atau [4] HY010 [o] dan [5] |
[1] Argumen DescriptorHandle adalah APD atau ARD.
[2] Argumen DescriptorHandle adalah IPD.
[3] Argumen DescriptorHandle adalah IRD.
Argumen DescriptorHandle sama dengan argumen DescriptorHandle dalam fungsi SQLGetDescField atau SQLGetDescRec yang berjalan secara asinkron.
Argumen DescriptorHandle berbeda dari argumen DescriptorHandle dalam fungsi SQLGetDescField atau SQLGetDescRec yang berjalan secara asinkron.
SQLGetDescField dan SQLGetDescRec (Status Yang Disiapkan)
S2 Tidak Ada Hasil |
S3 Hasil |
---|---|
--[1], [2], atau [3] S11[2] dan [x] | --[1], [2], atau [3] S11 [x] |
[1] Argumen DescriptorHandle adalah APD atau ARD.
[2] Argumen DescriptorHandle adalah IPD.
[3] Argumen DescriptorHandle adalah IRD. Perhatikan bahwa fungsi-fungsi ini selalu mengembalikan SQL_NO_DATA dalam status S2 ketika DescriptorHandle adalah IRD.
SQLGetDiagField dan SQLGetDiagRec
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
--[1] | -- | -- | -- | -- | -- | -- |
IH[2] | --[3] | --[3] | -- | -- | --[3] | --[3] |
[1] Baris ini menunjukkan transisi ketika HandleType SQL_HANDLE_ENV, SQL_HANDLE_DBC, atau SQL_HANDLE_DESC.
[2] Baris ini menunjukkan transisi ketika HandleType SQL_HANDLE_STMT.
[3] SQLGetDiagField selalu mengembalikan kesalahan dalam keadaan ini ketika DiagIdentifier SQL_DIAG_ROW_COUNT.
SQLGetEnvAttr
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
-- | -- | -- | -- | -- | -- | -- |
SQLGetFunctions
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
-- | -- | -- | -- | -- | -- | -- |
SQLGetInfo
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
-- | -- | -- | -- | -- | -- | -- |
SQLGetStmtAttr
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | --[1] 24000[2] | --[1] 24000[2] | --[1] 24000[2] | Lihat tabel berikutnya | HY010 | HY010 |
[1] Atribut pernyataan tidak SQL_ATTR_ROW_NUMBER.
[2] Atribut pernyataan tersebut SQL_ATTR_ROW_NUMBER.
SQLGetStmtAttr (Status Kursor)
S5 Dibuka |
S6 SQLFetch atau SQLFetchScroll |
S7 SQLExtendedFetch |
---|---|---|
--[1] 24000[2] | --[1] atau ([v] dan [2]) 24000 [b] dan [2] HY109 [i] dan [2] | -- [i] atau ([v] dan [2]) 24000 [b] dan [2] HY109[1] dan [2] |
[1] Argumen Atribut tidak SQL_ATTR_ROW_NUMBER.
[2] Argumen Atribut SQL_ATTR_ROW_NUMBER.
SQLMoreResults
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
(IH) | --[1] | --[1] | -- [s] dan [2] S1 [nf], [np], dan [4] S2 [nf], [p], dan [4] S5 [s] dan [3] S11 [x] | S1 [nf], [np], dan [4] S3 [nf], [p] dan [4] S4 [s] dan [2] S5 [s] dan [3] S11 [x] | HY010 | NS [c] HY010 [o] |
[1] Fungsi ini selalu mengembalikan SQL_NO_DATA dalam keadaan ini.
[2] Hasil berikutnya adalah jumlah baris.
[3] Hasil berikutnya adalah tataan hasil.
[4] Hasil saat ini adalah hasil terakhir.
SQLNativeSql
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
-- | -- | -- | -- | -- | -- | -- |
SQLNumParams
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | HY010 | -- [s] S11 [x] | -- [s] S11 [x] | -- [s] S11 [x] | HY010 | NS [c] HY010 [o] |
SQLNumResultCols
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | HY010 | -- [s] S11 [x] | -- [s] S11 [x] | -- [s] S11 [x] | HY010 | NS [c] HY010 [o] |
SQLParamData
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | HY010 | HY010 | HY010 | HY010 | Lihat tabel berikutnya | NS [c] HY010 [o] |
SQLParamData (Perlu Status Data)
S8 Perlu Data |
S9 Harus Diletakkan |
S10 Bisa Taruh |
---|---|---|
S1 [e] dan [1] S2 [e], [nr], dan [2] S3 [e], [r], dan [2] S5 [e] dan [4] S6 [e] dan [5] S7 [e] dan [3] S9 [d] S11 [x] | HY010 | S1 [e] dan [1] S2 [e], [nr], dan [2] S3 [e], [r], dan [2] S4 [s], [nr], dan ([1] atau [2]) S5 [s], [r], dan ([1] atau [2]) S5 ([s] atau [e]) dan [4] S6 ([s] atau [e]) dan [5] S7 ([s] atau [e]) dan [3] S9 [d] S11 [x] |
[1] SQLExecDirect mengembalikan SQL_NEED_DATA.
[2] SQLExecute mengembalikan SQL_NEED_DATA.
[3] SQLSetPos telah dipanggil dari negara bagian S7 dan dikembalikan SQL_NEED_DATA.
[4] SQLBulkOperations telah dipanggil dari negara bagian S5 dan dikembalikan SQL_NEED_DATA.
[5] SQLSetPos atau SQLBulkOperations telah dipanggil dari status S6 dan dikembalikan SQL_NEED_DATA.
SQLPrepare
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
(IH) | S2 [s] dan [nr] S3 [s] dan [r] S11 [x] | -- [s] atau ([e] dan [1]) S1 [e] dan [2] S11 [x] | S1 [e] dan [3] S2 [s], [nr], dan [3] S3 [s], [r], dan [3] S11 [x] dan [3] 24000[4] | Lihat tabel berikutnya | HY010 | NS [c] HY010 [o] |
[1] Persiapan gagal karena alasan selain memvalidasi pernyataan (SQLSTATE adalah HY009 [nilai argumen tidak valid] atau HY090 [String tidak valid atau panjang buffer]).
[2] Persiapan gagal saat memvalidasi pernyataan (SQLSTATE bukan HY009 [nilai argumen tidak valid] atau HY090 [String tidak valid atau panjang buffer]).
[3] Hasil saat ini adalah hasil terakhir atau satu-satunya, atau tidak ada hasil saat ini. Untuk informasi selengkapnya tentang beberapa hasil, lihat Beberapa Hasil.
[4] Hasil saat ini bukan hasil terakhir.
SQLPrepare (Status Kursor)
S5 Dibuka |
S6 SQLFetch atau SQLFetchScroll |
S7 SQLExtendedFetch |
---|---|---|
24000 | 24000 | 24000 |
SQLPutData
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | HY010 | HY010 | HY010 | HY010 | Lihat tabel berikutnya | NS [c] HY010 [o] |
SQLPutData (Perlu Status Data)
S8 Perlu Data |
S9 Harus Diletakkan |
S10 Bisa Taruh |
---|---|---|
HY010 | S1 [e] dan [1] S2 [e], [nr], dan [2] S3 [e], [r], dan [2] S5 [e] dan [4] S6 [e] dan [5] S7 [e] dan [3] S10 [s] S11 [x] | -- [s] S1 [e] dan [1] S2 [e], [nr], dan [2] S3 [e], [r], dan [2] S5 [e] dan [4] S6 [e] dan [5] S7 [e] dan [3] S11 [x] HY011[6] |
[1] SQLExecDirect mengembalikan SQL_NEED_DATA.
[2] SQLExecute mengembalikan SQL_NEED_DATA.
[3] SQLSetPos telah dipanggil dari negara bagian S7 dan dikembalikan SQL_NEED_DATA.
[4] SQLBulkOperations telah dipanggil dari negara bagian S5 dan dikembalikan SQL_NEED_DATA.
[5] SQLSetPos atau SQLBulkOperations telah dipanggil dari status S6 dan dikembalikan SQL_NEED_DATA.
[6] Satu atau beberapa panggilan ke SQLPutData untuk satu parameter yang dikembalikan SQL_SUCCESS, dan kemudian panggilan ke SQLPutData dilakukan untuk parameter yang sama dengan StrLen_or_Ind diatur ke SQL_NULL_DATA.
SQLRowCount
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
(IH) | (HY010) | (HY010) | -- | -- | (HY010) | (HY010) |
SQLSetConnectAttr
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
--[1] | -- | -- | -- | --[2] 24000[3] | HY010 | HY010 |
[1] Baris ini menunjukkan transisi ketika Atribut adalah atribut koneksi. Untuk transisi saat Atribut adalah atribut pernyataan, lihat tabel transisi pernyataan untuk SQLSetStmtAttr.
[2] Argumen Atribut tidak SQL_ATTR_CURRENT_CATALOG.
[3] Argumen Atribut SQL_ATTR_CURRENT_CATALOG.
SQLSetCursorName
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | -- | -- | 24000 | 24000 | HY010 | HY010 |
SQLSetDescField dan SQLSetDescRec
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH[1] | -- | -- | -- | -- | HY010 | HY010 |
[1] Baris ini menunjukkan transisi di mana argumen DescriptorHandle adalah ARD, APD, IPD, atau (untuk SQLSetDescField) IRD ketika argumen FieldIdentifier SQL_DESC_ARRAY_STATUS_PTR atau SQL_DESC_ROWS_PROCESSED_PTR. Ini adalah kesalahan untuk memanggil SQLSetDescField untuk IRD ketika FieldIdentifier adalah nilai lain.
SQLSetEnvAttr
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
HY011 | HY011 | HY011 | HY011 | Y011 | HY01 | HY011 |
SQLSetPos
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | HY010 | HY010 | 24000 | Lihat tabel berikutnya | HY010 | NS [c] HY010 [o] |
SQLSetPos (Status Kursor)
S5 Dibuka |
S6 SQLFetch atau SQLFetchScroll |
S7 SQLExtendedFetch |
---|---|---|
24000 | -- [s] S8 [d] S11 [x] 24000 [b] HY109 [i] | -- [s] S8 [d] S11 [x] 24000 [b] HY109 [i] |
SQLSetStmtAttr
S0 Tidak dialokasikan |
S1 Dialokasikan |
S2-S3 Disiapkan |
S4 Dijalankan |
S5-S7 Kursor |
S8-S10 Perlu Data |
S11-S12 Asinkron |
---|---|---|---|---|---|---|
IH | -- | --[1] HY011[2] | --[1] 24000[2] | --[1] 24000[2] | HY010 [np] atau [1] HY011 [p] dan [2] | HY010 [np] atau [1] HY011 [p] dan [2] |
[1] Argumen Atribut tidak SQL_ATTR_CONCURRENCY, SQL_ATTR_CURSOR_TYPE, SQL_ATTR_SIMULATE_CURSOR, SQL_ATTR_USE_BOOKMARKS, SQL_ATTR_CURSOR_SCROLLABLE, atau SQL_ATTR_CURSOR_SENSITIVITY.
[2] Argumen Atributnya adalah SQL_ATTR_CONCURRENCY, SQL_ATTR_CURSOR_TYPE, SQL_ATTR_SIMULATE_CURSOR, SQL_ATTR_USE_BOOKMARKS, SQL_ATTR_CURSOR_SCROLLABLE, atau SQL_ATTR_CURSOR_SENSITIVITY.