Transaction Control Language (TCL)

This blog contains about Transaction Control Language (TCL)

Halo olll!! how are uu? Semoga senantiasa berada dalam lingkungan Allah ya.. Di Blog kali ini Aku akan membahas beberapa pengertian Dari TCL or transaction Control Language, dan aku juga akan memberikan contoh terkait TCL..
enjoyy it!!!

Sebelumnya mentemen harus tahu apa itu "TCL"?
Come on! let's learn!


a. Transaction Control Language (TCL)
Transaction Control Language (TCL) adalah bahasa yang digunakan dalam manajemen transaksi pada sistem basis data. TCL digunakan untuk mengontrol transaksi, yaitu operasi yang terdiri dari beberapa tindakan yang harus dieksekusi sebagai satu kesatuan logis. Dalam TCL, terdapat beberapa perintah penting yang digunakan untuk mengelola transaksi seperti commit, Rollback, Save point, dan set Transaction.

b. Types and examples

1. COMMIT
Perintah untuk mengakhiri transaksi yang sedang berjalan dan menyimpan semua perubahan yang telah dilakukan ke dalam basis data.

sql
START TRANSACTION; UPDATE produk SET harga = 200 WHERE id_produk = 1; COMMIT;

Hasil:

jaa
Query OK, 1 row affected (0.01 sec)

Pada contoh di atas, kita memulai transaksi dengan perintah START TRANSACTION. Kemudian, kita melakukan update pada harga produk dengan id_produk = 1, dan mengakhiri transaksi dengan perintah COMMIT. Sehingga, perubahan pada basis data akan disimpan.

2. ROLLBACK
Perintah untuk membatalkan transaksi yang sedang berjalan dan mengembalikan basis data ke kondisi sebelum transaksi dilakukan.

sql
START TRANSACTION; UPDATE produk SET harga = 200 WHERE id_produk = 1; ROLLBACK;

Hasil:

java
Query OK, 0 rows affected (0.01 sec)

Pada contoh di atas, kita memulai transaksi dengan perintah START TRANSACTION. Kemudian, kita melakukan update pada harga produk dengan id_produk = 1, tetapi karena kita menggunakan perintah ROLLBACK, maka transaksi dibatalkan dan basis data dikembalikan ke kondisi sebelum transaksi dilakukan.

3. SAVEPOINT
Perintah untuk membuat titik penyimpanan (checkpoint) pada transaksi yang sedang berjalan, sehingga jika terjadi kesalahan dalam transaksi, dapat dilakukan rollback hanya pada bagian transaksi yang belum dieksekusi setelah titik penyimpanan tersebut.

sql
START TRANSACTION; UPDATE produk SET harga = 200 WHERE id_produk = 1; SAVEPOINT harga_awal; UPDATE produk SET harga = 250 WHERE id_produk = 1; ROLLBACK TO harga_awal; COMMIT;

Hasil:
java
Query OK, 1 row affected (0.01 sec)

Pada contoh di atas, kita memulai transaksi dengan perintah START TRANSACTION. Kemudian, kita melakukan update pada harga produk dengan id_produk = 1 dan membuat sebuah savepoint dengan nama harga_awal. Selanjutnya, kita melakukan update kembali pada harga produk dengan id_produk = 1, tetapi karena kita menggunakan perintah ROLLBACK TO harga_awal, maka update yang dilakukan setelah savepoint akan dibatalkan. Akhirnya, kita mengakhiri transaksi dengan perintah COMMIT, sehingga perubahan pada basis data akan disimpan.

4. SET TRANSACTION
TCL juga dapat digunakan untuk mengatur tingkat isolasi transaksi, yaitu seberapa besar akses yang diizinkan antar transaksi dalam sistem basis data. Tingkat isolasi transaksi ini biasanya diatur dengan perintah SET TRANSACTION.

sql
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE; START TRANSACTION; UPDATE produk SET harga = 200 WHERE id_produk = 1; COMMIT;

Hasil:
java
Query OK, 1 row affected (0.01 sec)

Pada contoh di atas, kita mengatur tingkat isolasi transaksi dengan perintah SET TRANSACTION ISOLATION LEVEL SERIALIZABLE, yang merupakan tingkat isolasi transaksi tertinggi pada basis data MySQL. Kemudian, kita memulai transaksi dengan perintah START TRANSACTION dan melakukan update pada harga produk dengan id_produk = 1. Akhirnya, kita mengakhiri transaksi dengan perintah COMMIT, sehingga perubahan pada basis data akan disimpan.

Fungsi Transaction Control Language :
  • Mengelola transaksi: TCL digunakan untuk mengontrol transaksi, yaitu operasi yang terdiri dari beberapa tindakan yang harus dieksekusi sebagai satu kesatuan logis. Dalam TCL, terdapat beberapa perintah penting yang digunakan untuk mengelola transaksi, seperti COMMIT, ROLLBACK, dan SAVEPOINT.
  • Mengendalikan isolasi transaksi: TCL juga dapat digunakan untuk mengatur tingkat isolasi transaksi, yaitu seberapa besar akses yang diizinkan antar transaksi dalam sistem basis data. Tingkat isolasi transaksi ini biasanya diatur dengan perintah SET TRANSACTION.
  • Meningkatkan konsistensi basis data: Dengan menggunakan TCL, pengguna dapat memastikan bahwa transaksi yang dilakukan terhadap basis data dilakukan dengan benar dan sesuai dengan persyaratan aplikasi, sehingga konsistensi basis data dapat terjaga.
  • Menangani kesalahan: TCL juga dapat digunakan untuk menangani kesalahan yang terjadi saat melakukan operasi terhadap basis data. Jika terjadi kesalahan dalam transaksi, perintah ROLLBACK dapat digunakan untuk membatalkan transaksi dan mengembalikan basis data ke kondisi sebelum transaksi dilakukan.
Dengan menggunakan TCL, pengguna dapat memastikan bahwa operasi yang dilakukan pada basis data dilakukan dengan benar dan terkontrol, sehingga integritas dan konsistensi basis data dapat terjaga.

Komentar

Postingan populer dari blog ini

PRAKTIKUM DATABASE

Field from Database structure

GIT