Bagikan melalui


SQLGetData (Pustaka Kursor)

Penting

Fitur ini akan dihapus dalam versi Windows yang akan datang. Hindari menggunakan fitur ini dalam pekerjaan pengembangan baru dan rencanakan untuk memodifikasi aplikasi yang saat ini menggunakan fitur ini. Microsoft merekomendasikan penggunaan fungsionalitas kursor driver.

Topik ini membahas penggunaan fungsi SQLGetData di pustaka kursor. Untuk informasi umum tentang SQLGetData, lihat Fungsi SQLGetData.

Pustaka kursor mengimplementasikan SQLGetData dengan terlebih dahulu membuat pernyataan SELECT dengan klausa WHERE yang menghitung nilai yang disimpan dalam cache-nya untuk setiap kolom terikat di baris saat ini. Kemudian menjalankan pernyataan SELECT untuk memilih kembali baris dan memanggil SQLGetData di driver untuk mengambil data dari sumber data (dibandingkan dengan cache).

Perhatian

Klausa WHERE yang dibangun oleh pustaka kursor untuk mengidentifikasi baris saat ini dapat gagal mengidentifikasi baris apa pun, mengidentifikasi baris yang berbeda, atau mengidentifikasi lebih dari satu baris. Untuk informasi selengkapnya, lihat Membuat Pernyataan yang Dicari.

Jika atribut pernyataan SQL_ATTR_USE_BOOKMARKS diatur ke SQL_UB_VARIABLE, SQLGetData dapat dipanggil pada kolom 0 untuk mengembalikan data bookmark.

Panggilan ke SQLGetData tunduk pada batasan berikut:

  • SQLGetData tidak dapat dipanggil untuk kursor hanya-terusan.

  • SQLGetData hanya dapat dipanggil saat kondisi berikut terpenuhi: pernyataan SELECT menghasilkan tataan hasil; pernyataan SELECT tidak berisi gabungan, klausa UNION , atau klausa GROUP BY ; dan kolom apa pun yang menggunakan alias atau ekspresi dalam daftar pemilihan tidak terikat dengan SQLBindCol.

  • Jika driver hanya mendukung satu pernyataan aktif, pustaka kursor mengambil sisa hasil yang ditetapkan sebelum menjalankan pernyataan SELECT dan memanggil SQLGetData.