Anda di halaman 1dari 4

Belajar MySQL Dasar : Memahami perintah

TCL
Transaction Control Language (TCL) adalah perintah SQL yang berhubungan dengan transaksi
di database

Perintah TCL antara lain

COMMIT -> Menyimpan transaksi secara permanen


ROLLBACK -> Mengembalikan database ke bentuk awal / COMMIT terakhir

#1 Perintah COMMIT

Perintah COMMIT digunakan untuk menyimpan transaksi secara permanen di database

Saat melakukan perintah DML seperti INSERT, UPDATE, DELETE traksaksi sebenarnya
belum dilakukan secara permanen. Artinya operasi tersebut masih bisa di rollback / di batalkan

Jika ingin menyimpan transaksi sehingga tidak dapat di rollback kita gunakan perintah COMMIT

Kapan perintah COMMIT dibutuhkan?

Dalam suatu rangkaian operasi data, jika ada 1 atau lebih operasi yang mengalami kegagalan
maka kita akan mengembalikan seperti ke bentuk semula. Jika tidak ada kesalahan maka
seluruh rangkaian pernyataan akan di – COMMIT untuk menyimpan transaksi secara
permanen

Gunakan Database universitas dan Table mahasiswa yang telah kita buat di materi DDL

CREATE DATABASE universitas

CREATE TABLE mahasiswa


(
nim INT(10),
nama VARCHAR(100),
alamat VARCHAR(100)
)
INSERT INTO mahasiswa
VALUES
(21400200,"faqih","bandung"),
(21400201,"ina","jakarta"),
(21400202,"anto","semarang"),
(21400203,"dani","padang");
Selanjutnya kita cek data yang telah diinputkan

> SELECT * FROM mahasiswa;


+----------+-------+----------+
| nim | nama | alamat |
+----------+-------+----------+
| 21400200 | faqih | bandung |
| 21400201 | ina | jakarta |
| 21400202 | anto | semarang |
| 21400203 | dani | padang |
+----------+-------+----------+

4 rows in set (0.00 sec)

Untuk memulai menggunakan COMMIT harus dimulai dengan

START TRANSACTION;
> START TRANSACTION;
Query OK, 0 rows affected (0.00 sec)

> INSERT INTO mahasiswa VALUES (21400210,"Jaka","Kalimantan");


Query OK, 1 row affected (0.00 sec)

> COMMIT;
Query OK, 0 rows affected (0.07 sec)

> SELECT * FROM mahasiswa;


+----------+-------+------------+
| nim | nama | alamat |
+----------+-------+------------+
| 21400200 | faqih | bandung |
| 21400201 | ina | jakarta |
| 21400202 | anto | semarang |
| 21400203 | dani | padang |
| 21400210 | Jaka | Kalimantan |
+----------+-------+------------+
5 rows in set (0.00 sec)

#2 Perintah ROLLBACK

Perintah ROLLBACK digunakan untuk mengembalikan database ke bentuk awal / COMMIT


terakhir

Perintah COMMIT dan ROLLBACK saling berkaitan

Kapan perintah ROLLBACK dibutuhkan?


Dalam suatu rangkaian operasi data, jika ada 1 atau lebih operasi yang mengalami kegagalan
maka kita akan mengembalikan seperti ke bentuk semula menggunakan perintah
ROLLBACK

Untuk menggunakan COMMIT / ROLLBACK harus dimulai dengan

START TRANSACTION;
> START TRANSACTION;
Query OK, 0 rows affected (0.00 sec)

> SELECT * FROM mahasiswa;


+----------+-------+------------+
| nim | nama | alamat |
+----------+-------+------------+
| 21400200 | faqih | bandung |
| 21400201 | ina | jakarta |
| 21400202 | anto | semarang |
| 21400203 | dani | padang |
| 21400210 | Jaka | Kalimantan |
+----------+-------+------------+
5 rows in set (0.00 sec)

> INSERT INTO mahasiswa VALUES (21400211,"Fitri","Surabaya");


Query OK, 1 row affected (0.00 sec)

> SELECT * FROM mahasiswa;


+----------+-------+------------+
| nim | nama | alamat |
+----------+-------+------------+
| 21400200 | faqih | bandung |
| 21400201 | ina | jakarta |
| 21400202 | anto | semarang |
| 21400203 | dani | padang |
| 21400210 | Jaka | Kalimantan |
| 21400211 | Fitri | Surabaya |
+----------+-------+------------+
6 rows in set (0.00 sec)
> ROLLBACK;
Query OK, 0 rows affected (0.11 sec)

> SELECT * FROM mahasiswa;


+----------+-------+------------+
| nim | nama | alamat |
+----------+-------+------------+
| 21400200 | faqih | bandung |
| 21400201 | ina | jakarta |
| 21400202 | anto | semarang |
| 21400203 | dani | padang |
| 21400210 | Jaka | Kalimantan |
+----------+-------+------------+
5 rows in set (0.00 sec)

Saat kita gunakan perintah ROLLBACK akan kembali ke database awal

Anda mungkin juga menyukai