Anda di halaman 1dari 8

LAPORAN BASIS DATA II

Transaction

Untuk memenuhi tugas matakuliah Basis Data II

Disusun oleh:

Mohamad Firzon Ainur Roziqin


180535632548
S1 TI 2018 OFF B

UNIVERSITAS NEGERI MALANG FAKULTAS


TEKNIK
JURUSAN TEKNIK ELEKTRO
OKTOBER
1. Cara mengakses mySQL di Command Line.
a. Cara menggunakan mysql di cmd, yaitu menulis perintah mysql – u root –p lalu tekan enter,
kemudian masukkan password jika dipassword.
2. Cara menggunakan transaction di mysql
a. Membuka database dengan perintah show databases;
b. Memilih database yang akan dibuka dengan perintah use cursor;

c. Menjalankan transaction dengan perintah begin;


d. Kemudian masukkan perintah select * from emp for update;
Maka akan tampil data di tabel emp
e. Kemudian memberi perintah yang sama ke layer cmd lainnya.

Ket : Maka terlihat bahwa terjadi lock, karena di layer 1 sudah melakukan transaksi.
f. Menghentikan transaksi dengan memberi perintah commit;

Ket : maka transaksinya berakhir


g. Mencoba memberi perintah di layer 2

Ket : transaksi di layer 2 dapat dijalankan.


3. Autocommit
a. Jika di set auto commit = 0
Layer 1 layer 2

Penjelasan : pada layer 1 pertama kita ketik begin; kemudian memeberi perintah set
autocommit=0; maka program akan menjalankan perintah tersebut. Lalu menampilkan
semua isi dari tabel dengan perintah select * from emp for update; yang berarti
menampilkan tabel yang akan di update. Lalu mencoba memasukkan perintah update
emp set sal=1000 where eno=1; yang berarti mengganti nilai pada tabel emp pada sal
nomor 1 menjadi 1000.

Pada layer 2 pertama kita ketik begin;. Lalu menampilkan perintah select * from; yang
berarti menampilkan tabel namun hasilnya akan tetap bernilai 4444 karena pada
autocommit=0; program yang di jalankan harus di commit; sehingga tabel yang sudah
diubah dilayer 1 dapat ditampilkan di layer 2.
b. Jika autocommit=1

Penjelasan : pada layer 1 pertama kita ketik begin; kemudian memeberi perintah set
autocommit=1; maka program akan menjalankan perintah tersebut. Lalu menampilkan
semua isi dari tabel dengan perintah select * from emp for update; yang berarti
menampilkan tabel yang akan di update. Lalu mencoba memasukkan perintah update
emp set sal=6000 where eno=5; yang berarti mengganti nilai pada tabel emp pada sal
nomor 5 menjadi 6000.

Pada layer 2 pertama kita ketik begin; Lalu menampilkan perintah select * from; yang
berarti menampilkan tabel dan hasilnya akan berubah seperti pada layer 1 karena pada
autocommit=1; program yang di jalankan dapat berubah sesuai dengan layer 1 tanpa
harus di commit; terlebih dahulu

c. Fungsi commit
Jadi fungsi commit; adalah untuk menghentikan transaction ketika di set autocommit=0;
sehingga tanpa adanya commit, perintah perintah yang dijalankan di layer 1 tidak akan
tertampil di layer 2 karena belum di commit.
4. Savepoint.

Penjelasan : savepoint adalah titik yang ditandai untuk menjalankan kembali


perintah di waktu itu. Contoh programnya pertama memasukkan perintah begin; lalu
memasukkan perintah select * from emp; untuk melihat tabel yang akan di update. Lalu
mencoba merubah nilai dari tabel emp pada nilai sal dari 300000 menjadi 1000.
Kemudian setelah diubah maka memberi perintah savepoint A untuk menandai titik
tersebut. Kemudian mencoba melakukan perubahan data lagi di sal nomor 1 menjadi
100. Setelah itu kita mencoba kembali ketitik save point A dengan nilai sal di nomer 1
masih 1000, maka memberi perintah rollback to A;

5. Implisit commit
Jadi pada artikel tersebut membahas tentang implisit commit. Perintah perintah mySQL
seperti statement Create, Alter, Drop terdapat commit. Contoh pada perintah Create
table (kecuali perintah temporary table) tabel yang sudah di buat akan langsung ter
commit. Sehingga tidak bisa di rollback atau di kembalkan seperti sebelumnya, begitu
pula alter table. Maka jika ingin menghapus maka harus memberi perintah drop. Drop
juga terdapat implisit commit, karena setelah di Drop sudah tidak bisa di kembalikan
lagi, kecuali membuat tabel baru.
6. Implementasi transaction pada stored procedure

Penjelasan : transaction dapat di implementasikan di stored procedure, yaitu dengan


kode seperti biasa yaitu delimiter // untuk membuat wadah stored procedure.
Kemudian masukan create procedure net(); untuk membuat procedure bernama net.
Kemudian memberi perintah begin; untuk memulai transaction. Lalu perintah select...
untuk menampilkan isi tabel pada sal 1. Kemudain perintah update, untuk update data
sal 1 yaitu 500 lalu memberi perintah commit untuk menghentikan transaction.
Kemudian masukkan perintah select; untuk menampilkan data. Jadi nanti jika stored
procedure di panggil maka akan menghasilkan 2 tabel yaitu tabel sebelum di update
dan sesudah di update.

Anda mungkin juga menyukai