Lompat ke konten Lompat ke sidebar Lompat ke footer

Cara Membuat Trigger di MySQL

Assalamualaikum agan semua, pada sore ini saya ingin kembali memposting tutorial sederhana 😀
Karena sudah lama saya tidak memposting tentang Database MySQL kali ini saya akan membahas tentang Cara Membuat Trigger di MySQL.

Apa itu Trigger ?
Trigger adalah suatu prosedur yang akan menjalankan suatu perintah SQL yang bisa terjadi pada saat sebelum atau sesudah kita melakukan INSERT, UPDATE dan DELETE suatu row pada tabel

Syntak dasar dari trigger adalah sebagai berikut :

CREATE TRIGGER trigger_name trigger_time trigger_eventON table_name FOR EACH ROWBEGINtrigger_bodyEND

Keterangan :

  • trigger_name = nama trigger
  • trigger_time = kapan waktu eksekusi trigger tersebut bisa sebelum atau sesudah perubahan yang terjadi pada baris di tabel, sesudah gunakan AFTER sebelum gunakan BEFORE
  • trigger_event = adalah event yang menyebabkan trigger dijalankan, bisa dengan INSERT, UPDATE, Delete
  • table_name = nama tabel
  • trigger_body = perintah – perintah SQL yang akan dijalankan. Perlu diperhatikan karena trigger digunakan pada saat terjadi perubahan pada row. untuk referensi ke row yang sebelum dan sesudah terjadinya perubahan anda dapat menggunakan “OLD” dan “NEW

Cara Membuat Trigger di MySQL
Pada contoh berikut saya akan membuat trigger yang berguna untuk mengurangi stok pada tabel barang ketika terjadinya insert data pada tabel penjualan

  1. Buat sebuah database dengan nama latihan dan buat tabel dengan nama barang
    CREATE TABLE barang (kd_barang VARCHAR(5) PRIMARY KEY,nama VARCHAR(100),stok INT(4));

  2. Buat tabel dengan nama penjualan
    CREATE TABLE penjualan (kd_transaksi INT(11) PRIMARY KEY AUTO_INCREMENT,tanggal DATETIME,kd_barang VARCHAR(5),jumlah INT(11));

  3. Membuat trigger yang akan mengurangi stok pada tabel barang ketika terjadi insert pada tabel penjualan
    DELIMITER |CREATE TRIGGER kurangi_stok AFTER INSERTON penjualan FOR EACH ROWBEGIN UPDATE barang SET stok=stok-NEW.jumlah WHERE kd_barang=NEW.kd_barang;END;|DELIMITER;

  4. Untuk mengetest apakah trigger yang kita buat berjalan atau tidak pertama pata kita Insert data pada tabel barang
    INSERT INTO barang VALUES ('BRG01','Kecap',5),('BRG02','Sampo',6),('BRG03','Sambal',10),('BRG04','Mentega',15);

  5. Insert data pada tabel penjualan
    INSERT INTO penjualan(tanggal,kd_barang,jumlah) VALUES (SYSDATE(),'BRG01',2),(SYSDATE(),'BRG03',4),(SYSDATE(),'BRG04',7)

  6. Kita lihat lagi pada pada tabel barang, perhatikan pada column stok bahwa stok sudah berkurang secara otomatis ketika terjadi insert pada tabel penualan

Sekian pembahasan tentang Cara Membuat Trigger di MySQL
Tunggu tutorial menarik lainnya, karena itu kunjungi terus blog ini

Posting Komentar untuk "Cara Membuat Trigger di MySQL"