Database server secara sederhana merupakan sebuah media penyimpanan data penting dan penyimpanan didesain sesuai kebutuhan memiliki 5 operasi dasar Insert , Update, Delete, Search data. Apa yang dimaksud Teknik transaksi database dan mengapa perlu teknik transaksi ? Transaksi merupakan suatu cara menjaga data tetap aman dan konsisten terhadap permintaan perubahan data sampai permintaan perubahan data selesai dilakukan.
Transaksi database didesain memiliki beberapa
sifat dasar 4 diantaranya:
- Atomicity : data dalam Database harus tetap aman dalam adanya permintaan perubahan data yang dihasilkan dari transaksi jika permintaan melibatkan beberapa table database maka jika terjadi kegagalan dalam 1 field saja maka data akan dikembalikan pada posisi semula atau ditolak
- Konsistensi : Integritas data harus tetap terjaga
- Isolasi : Setiap permintaan data transaksi dilakukan maka data akan dilock sampai proses selesai dieksekusi oleh datatabase
- Daya Tahan : database dapat menghidari kegagalan jika pada saat transaksi dilakukan terjadi deadlock maupun listrik mati
Kapan transaksi
database digunakan ?
Transaksi dapat
digunakan pada saat terjadi permintaan dari user untuk melakukan eksekusi
perintah insert , update, delete yang
melibatkan satu table maupun beberapa table yang akan dilakukan perubahan secara simultan.
Database Apa yang mendukung transaksi ? Setiap database server mendukung teknik
transaksi contoh produk database populer baik yang free maupun berbayar yang
mendukung transaksi 4 diantaranya :
- Mysql
- Firebird
- Ms. SQL Server
- Oracle
Bagaimana Cara menggunakan Transaksi database ?
Sebagai contoh menggunakan transaksi dengan database mysql
dapat dilakukan seperti berikut
Syntax:
START TRANSACTION [WITH CONSISTENT SNAPSHOT] | BEGIN [WORK]
COMMIT [WORK] [AND [NO] CHAIN] [[NO] RELEASE]
ROLLBACK [WORK] [AND [NO] CHAIN] [[NO] RELEASE]
SET autocommit = {0 | 1}
Contoh
penggunaan transaksi pada table
START TRANSACTION;
SELECT @A:=SUM(salary) FROM table1 WHERE type=1;
UPDATE table2 SET summary=@A WHERE type=1;
COMMIT;
ROLLBACK;
START TRANSACTION : Sebagai langkah awal transaksi baru
COMMIT : perintah untuk melakukan perubahan data secara permanen
ROLLBACK : Perintah untuk melakukan pembatalan perubahan data dan mengembalikan data pada keadan semula sebelum dilakukan perubahan
Apa dampak jika transaksi database tidak dilakukan ?
Dalam
aktivitas lingkup database jika transaksi tidak diterapkan akan beresiko pada
inkonsistensi data pada saat server database memiliki permintaan user secara
bersamaan. Jika terjadai error pada sat eksekusi permintaan perubahan maupun
insert data yang melibatkan beberapa table maka bias berakibat missing
information pada saat user melakukan query sebagai permintaan reporting data.
Jadi singkatnya
transaksi database digunakan sebagai control
terhadap perubahan data terhadap pada saat data digunakan secara bersamaan
maupun pada saat terjadi hal-hal yang tidak wajar seperti pemadaman
listrik,maupun deadlock pada database untuk mencegah inkonsistensi data.
No comments:
Post a Comment