0% menganggap dokumen ini bermanfaat (0 suara)
12 tayangan7 halaman

Basis Data - Modul Trigger

Dokumen ini menjelaskan tentang trigger dalam basis data, termasuk definisi, jenis, dan perilaku eksekusi trigger. MySQL mendukung trigger sejak versi 5.0.2 dan memiliki aturan tertentu dalam pendefinisiannya. Selain itu, terdapat latihan dan tugas praktikum yang berkaitan dengan pembuatan tabel dan trigger untuk mengelola stok dan transaksi dalam sistem basis data.

Diunggah oleh

ibrahimrizky696
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
12 tayangan7 halaman

Basis Data - Modul Trigger

Dokumen ini menjelaskan tentang trigger dalam basis data, termasuk definisi, jenis, dan perilaku eksekusi trigger. MySQL mendukung trigger sejak versi 5.0.2 dan memiliki aturan tertentu dalam pendefinisiannya. Selain itu, terdapat latihan dan tugas praktikum yang berkaitan dengan pembuatan tabel dan trigger untuk mengelola stok dan transaksi dalam sistem basis data.

Diunggah oleh

ibrahimrizky696
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd

TRIGGER

1. Trigger
Trigger dapat didefinisikan sebagai himpunan kode (prosedural) yang dieksekusi secara
otomatis sebagai respon atas suatu kejadian berkaitan dengan tabel basis data. Kejadian
(event) yang dapat membangkitkan trigger umumnya berupa pernyataan INSERT, UPDATE,
dan DELETE. Berdasarkan ruanglingkupnya, trigger diklasifikasikan menjadi dua jenis: row
trigger dan statement trigger. Trigger baris (row) mendefinisikan aksi untuk setiap baris tabel;
trigger pernyataan hanya berlaku untuk setiap pernyataan INSERT, UPDATE, atau DELETE.
Dari sisi perilaku (behavior) eksekusi, trigger dapat dibedakan menjadi beberapa
jenis; namun umumnya ada dua jenis: trigger BEFORE dan AFTER.Sesuai penamaannya,
jenis-jenis ini merepresentasikan waktu eksekusi trigger— misalnya sebelum ataukah
sesudah pernyataan- pernyataan yang berkorespondensi. Adakalanya trigger dipandang
sebagai bentuk spesifik dari stored procedure (terkait pendefinisian body). Bagaimanapun,
trigger akan dipanggil (secaraotomatis) ketika event terjadi, sedangkan stored procedure
harus dipanggil secara eksplisit.

2. Trigger MySQL
MySQL mendukung fitur trigger termasuk juga stored procedure dan view sejak versi
5.0.2 Sebagaimana objek-objek lainnya, trigger diciptakan menggunakan pernyataan
CREATE.
Sintaks pendefinisian trigger diperlihatkan sebagai berikut:

MySQL tidak mengizinkan multiple trigger dengan waktu aksi dan event sama per tabel.
Misalkan di tabel A sudah didefinisikan trigger AFTER INSERT, maka kita tidak boleh
mendefinisikan trigger AFTER INSERT lagi; namun AFTEREDIT, AFTER DELETE, atau
BEFORE (INSERT, EDIT, dan DELETE) bisa diterima.
LATIHAN

1. Buatlah database cart


2. Buatlah tabel barang dengan ketentuan seperti di bawah ini:

3. Buatlah tabel restock dengan ketentuan seperti di bawah ini:

4. Buatlah tabel transaksi dengan ketentuan seperti di bawah ini:

5. Buatlah trigger untuk update stok pada tabel barang setelah menambahkan data pada
tabel restock
6. Buatlah trigger untuk update stok pada tabel barang setelah menambahkan data pada
tabel transaksi
TUGAS PRAKTIKUM

1. Modifikasi trigger INSERT pembelian untuk menambahkan fitur bonus di


dalamnya. Aturannya adalah jika pembelian > 50 dan < 100, maka bonus = 5;
jika pembelian > 100 dan < 150, maka bonus = 10; jika pembelian > 150, maka
bonus = 20. Ingat, aturan penyesuaian stok barang masih berlaku, setiapada
pembelian maka stok akan berkurang.
a. Setting stok

b. Tambahkan transaksi

c. Setiap transaksi akan diberikan bonus


d. Stok akan otomatis menyesuaikan sesuai aturan

TUGAS RUMAH

1. Buat tabel pembayaran

id_pem Int(10), Primary


jumlah_pem Int(15)

Tambahkan field “Harga” pada table Barang, lalu modifikasi Trigger INSERT pada table
pembelian untuk menghitung nota pembayaran.
Contoh: Jika satuan harga barang A = 1000, dan terjadi pembelian sebanyak 10 item barang,
maka jumlah_pem akan tercatat 10000. Ingat, aturan bonus dan penyesuaian stok barang
masih berlaku.

2. Buat tabel log_pembelian

operasi Varchar(25), Primary


waktu date

Selanjutnya buatlah trigger di dalam tabel Pembelian untuk merekam operasi INSERT,
UPDATE, DELETE, dan kemudian menyimpan rekaman operasi sebagai bukti transaksi di
tabel log_pembelian.
- Jika INSERT, maka akan memasukkan operasi “Insert” dan menampilkan waktu
operasinya di tabel log_pembelian
- Jika UPDATE, maka akan memasukkan operasi “Update” dan menampilkan waktu
operasinya di tabel log_pembelian
- Jika DELETE, maka akan memasukkan operasi “Delete” dan menampilkan waktu
operasinya di tabel log_pembelian

Note :

Jika terjadi error duplikasi pendefinisian trigger, terlebih dahulu simpan query trigger
di dalam notepad lalu hapus semua trigger di tabel pembelian

TUGAS PROJECT
Terapkan trigger pada project UMKM yang sedang kalian buat untuk dapat menyesuaikan /
update stok pada tb_produk sebagaimana jumlah yang dibeli pada tb_transaksi.

Anda mungkin juga menyukai