Transaksi dan pengendalian transaksi.
Transaksi adalah serangkaian perintah SQL yang dieksekusi sebagai satu unit tunggal. Pengendalian transaksi adalah proses memastikan integritas data dalam database saat melakukan transaksi.
Jenis-jenis Perintah Transaksi
Dalam MySQL, ada beberapa perintah yang digunakan untuk mengelola transaksi:
- BEGIN: Memulai transaksi.
- COMMIT: Menyimpan perubahan data dalam database.
- ROLLBACK: Membatalkan transaksi dan mengembalikan database ke kondisi sebelum transaksi dimulai.
Contoh Penggunaan Transaksi
BEGIN; -- Memulai transaksi
UPDATE tabel_produk SET stok = stok - 5 WHERE id_produk = 1;
INSERT INTO tabel_transaksi (id_produk, jumlah) VALUES (1, 5);
COMMIT; -- Menyimpan perubahan dalam transaksi
Jika ada kesalahan dalam transaksi, Anda dapat menggunakan ROLLBACK
untuk membatalkannya:
BEGIN;
UPDATE tabel_produk SET stok = stok - 5 WHERE id_produk = 1;
INSERT INTO tabel_transaksi (id_produk, jumlah) VALUES (1, 5);
-- Terjadi kesalahan
ROLLBACK; -- Membatalkan transaksi
Pengendalian Transaksi Otomatis
MySQL juga mendukung pengendalian transaksi otomatis dengan menggunakan perintah AUTOCOMMIT
. Saat AUTOCOMMIT
diaktifkan, setiap perintah SQL dianggap sebagai transaksi yang terpisah.
-- Mengaktifkan AUTOCOMMIT
SET AUTOCOMMIT = 1;
-- Menonaktifkan AUTOCOMMIT
SET AUTOCOMMIT = 0;
Kesimpulan
Dengan memahami konsep transaksi dan pengendalian transaksi dalam MySQL, Anda dapat memastikan integritas data dalam database Anda saat melakukan operasi yang melibatkan beberapa perintah SQL. Pastikan untuk mengaktifkan atau menonaktifkan AUTOCOMMIT
sesuai dengan kebutuhan proyek Anda.
Semoga tutorial ini membantu Anda memahami dasar-dasar transaksi dalam MySQL!