Hasil Pemrosesan - Hasil Proses
Berlaku untuk: SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics Analytics
Platform System (PDW)
Pemrosesan menghasilkan aplikasi ODBC melibatkan penentuan karakteristik kumpulan hasil terlebih dahulu, lalu mengambil data ke dalam variabel program dengan menggunakan SQLBindCol atau SQLGetData.
Untuk memproses hasil
Mengambil informasi tataan hasil.
Jika kolom terikat digunakan, untuk setiap kolom yang ingin Anda ikat, panggil SQLBindCol untuk mengikat buffer program ke kolom.
Untuk setiap baris dalam tataan hasil:
Panggil SQLFetch untuk mendapatkan baris berikutnya.
Jika kolom terikat digunakan, gunakan data yang sekarang tersedia di buffer kolom terikat.
Jika kolom tidak terikat digunakan, panggil SQLGetData satu atau beberapa kali untuk mendapatkan data untuk kolom yang tidak terikat setelah kolom terikat terakhir. Panggilan ke SQLGetData harus dalam urutan nomor kolom yang meningkat.
Panggil SQLGetData beberapa kali untuk mendapatkan data dari kolom teks atau gambar.
Ketika SQLFetch memberi sinyal akhir hasil yang ditetapkan dengan mengembalikan SQL_NO_DATA, panggil SQLMoreResults untuk menentukan apakah kumpulan hasil lain tersedia.
Jika mengembalikan SQL_SUCCESS, kumpulan hasil lain akan tersedia.
Jika mengembalikan SQL_NO_DATA, tidak ada lagi tataan hasil yang tersedia.
Jika mengembalikan SQL_SUCCESS_WITH_INFO atau SQL_ERROR, panggil SQLGetDiagRec untuk menentukan apakah output dari pernyataan PRINT atau RAISERROR tersedia.
Jika parameter pernyataan terikat digunakan untuk parameter output atau nilai pengembalian prosedur tersimpan, gunakan data yang sekarang tersedia di buffer parameter terikat. Selain itu, ketika parameter terikat digunakan, setiap panggilan ke SQLExecute atau SQLExecDirect akan menjalankan pernyataan SQL S times, di mana S adalah jumlah elemen dalam array parameter terikat. Ini berarti bahwa akan ada serangkaian hasil S untuk diproses, di mana setiap set hasil terdiri dari semua kumpulan hasil, parameter output, dan kode pengembalian biasanya dikembalikan oleh satu eksekusi pernyataan SQL.
Catatan
Saat kumpulan hasil berisi baris komputasi, setiap baris komputasi tersedia sebagai tataan hasil terpisah. Kumpulan hasil komputasi ini diselingi dalam baris normal dan memecah baris normal menjadi beberapa kumpulan hasil.
Secara opsional, panggil SQLFreeStmt dengan SQL_UNBIND untuk merilis buffer kolom terikat apa pun.
Jika tataan hasil lain tersedia, buka Langkah 1.
Catatan
Untuk membatalkan pemrosesan kumpulan hasil sebelum SQLFetch mengembalikan SQL_NO_DATA, panggil SQLCloseCursor.