Apa Itu Transaksi?
Apa Itu Transaksi?
oleh : Steven Haryanto
Artikel ini hendak memperkenalkan konsep transaksi kepada mereka yang masih asing dengannya. Berhubung transaksi baru diperkenalkan di MySQL sekitar 2 tahun lalu, masih banyak penggunanya yang tidak pernah mengenal fasilitas yang sebetulnya amat penting ini. Begitu database kita sudah mengandung data yang cukup penting bukan sekedar berisi posting komentar pengunjung situs yang bisa dihapus kapan saja, misalnya atau begitu kita menginginkan stabilitas dan konsistensi dan tidak ingin waktu demi waktu harus memperbaiki record yang ngaco, misalnya maka kita harus memahami transaksi.
Contoh Pertama
Setiap kali orang menerangkan tentang transaksi database, contoh yang biasanya diambil adalah nyaris selalu tentang transaksi di bank, khususnya tentang seorang nasabah yang menyimpan sejumlah uang di rekening tabungannya, atau memindahkan uang dari rekening cek ke tabungan. Saya akan meneruskan tradisi ini karena memang contoh tersebut pas sekali menekankan pentingnya sebuah transaksi.
Anggaplah kita seorang nasabah untuk sebuah bank bernama Mandi Sendiri jelas bukan bank dengan aset terbesar di Indonesia karena ternyata dia sudah merasa cukup dengan hanya memakai Python dan MySQL. Tiga buah tabel di database bank ini skemanya sebagai berikut (telah disederhanakan):
# mencatat daftar transaksi CREATE TABLE trans ( id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT, tgl DATETIME, ket VARCHAR(255) NOT NULL, teller_id SMALLINT NOT NULL ); # jurnal kredit tabungan CREATE TABLE jtabungan ( trans_id BIGINT NOT NULL, norek_nasabah INT NOT NULL, jumlah DOUBLE NOT NULL ); # jurnal kas bank CREATE TABLE jkas ( trans_id BIGINT NOT NULL, jumlah DOUBLE NOT NULL );








