Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Pernyataan paling mudah dianggap sebagai pernyataan SQL, seperti SELECT * FROM Employee. Namun, pernyataan lebih dari sekadar pernyataan SQL - pernyataan tersebut terdiri dari semua informasi yang terkait dengan pernyataan SQL tersebut, seperti kumpulan hasil apa pun yang dibuat oleh pernyataan dan parameter yang digunakan dalam eksekusi pernyataan. Pernyataan bahkan tidak perlu memiliki pernyataan SQL yang ditentukan aplikasi. Misalnya, ketika fungsi katalog seperti SQLTables dijalankan pada pernyataan, fungsi tersebut menjalankan pernyataan SQL yang telah ditentukan sebelumnya yang mengembalikan daftar nama tabel.
Setiap pernyataan diidentifikasi oleh penanda pernyataan. Pernyataan dikaitkan dengan satu koneksi, dan mungkin ada beberapa pernyataan pada koneksi tersebut. Beberapa driver membatasi jumlah pernyataan aktif yang mereka dukung; opsi SQL_MAX_CONCURRENT_ACTIVITIES di SQLGetInfo menentukan berapa banyak pernyataan aktif yang didukung driver pada satu koneksi. Suatu pernyataan didefinisikan sebagai aktif jika memiliki hasil yang masih menunggu, dengan hasil berupa serangkaian hasil atau jumlah baris yang terpengaruh oleh pernyataan INSERT, UPDATE, atau DELETE, atau data sedang dikirim melalui beberapa pemanggilan SQLPutData.
Dalam sepotong kode yang mengimplementasikan ODBC (Driver Manager atau driver), handel pernyataan mengidentifikasi struktur yang berisi informasi pernyataan, seperti:
Status pernyataan
Diagnostik pada level pernyataan saat ini
Alamat variabel aplikasi yang terikat ke parameter pernyataan dan kolom tataan hasil
Pengaturan saat ini dari setiap atribut pernyataan
Handle statement digunakan dalam sebagian besar fungsi ODBC. Secara khusus, fungsi-fungsi tersebut digunakan untuk mengikat parameter dan kolom kumpulan hasil (SQLBindParameter dan SQLBindCol), menyiapkan dan mengeksekusi pernyataan (SQLPrepare, SQLExecute, dan SQLExecDirect), mengambil metadata (SQLColAttribute dan SQLDescribeCol), mengambil hasil (SQLFetch), dan mengambil informasi diagnostik (SQLGetDiagField dan SQLGetDiagRec). Mereka juga digunakan dalam fungsi katalog (SQLColumns, SQLTables, dan sebagainya) dan sejumlah fungsi lainnya.
Handle statement dialokasikan dengan SQLAllocHandle dan dibebaskan dengan SQLFreeHandle.