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.
Tingkat dukungan untuk transaksi ditentukan driver. ODBC dirancang untuk diimplementasikan pada database pengguna tunggal atau desktop yang tidak perlu mengelola beberapa pembaruan pada datanya. Selain itu, beberapa database yang mendukung transaksi melakukannya hanya untuk pernyataan Bahasa Manipulasi Data (DML) SQL; ada batasan atau semantik transaksi khusus mengenai penggunaan Data Definition Language (DDL) saat transaksi aktif. Artinya, mungkin ada dukungan transaksi untuk beberapa pembaruan simultan ke tabel tetapi tidak untuk mengubah jumlah dan definisi tabel selama transaksi.
Aplikasi menentukan apakah transaksi didukung, apakah DDL dapat disertakan dalam transaksi, dan efek khusus termasuk DDL dalam transaksi, dengan memanggil SQLGetInfo dengan opsi SQL_TXN_CAPABLE. Untuk informasi selengkapnya, lihat deskripsi fungsi SQLGetInfo .
Jika driver tidak mendukung transaksi tetapi aplikasi memiliki kemampuan (menggunakan API selain ODBC) untuk mengunci dan membuka kunci data, aplikasi dapat mencapai dukungan transaksi dengan mengunci dan membuka kunci rekaman dan tabel sesuai kebutuhan. Untuk menerapkan contoh transfer akun, aplikasi akan mengunci rekaman untuk kedua akun, menyalin nilai saat ini, mendebit akun pertama, mengkreditkan akun kedua, dan membuka kunci catatan. Jika ada langkah yang gagal, aplikasi akan mengatur ulang akun menggunakan salinan.
Bahkan sumber data yang mendukung transaksi mungkin tidak dapat mendukung lebih dari satu transaksi pada satu waktu dalam lingkungan tertentu. Aplikasi memanggil SQLGetInfo dengan opsi SQL_MULTIPLE_ACTIVE_TXN untuk menentukan apakah sumber data dapat mendukung transaksi aktif simultan pada lebih dari satu koneksi di lingkungan yang sama. Karena ada satu transaksi per koneksi, ini hanya menarik untuk aplikasi yang memiliki beberapa koneksi ke sumber data yang sama.