Trigger My SQL (Mengelola Stok dan Harga Pesanan)

Dalam sistem informasi penjualan, pengelolaan stok dan harga sangat penting. MySQL Trigger dapat mengotomatisasi pembaruan stok dan harga secara real-time. Artikel ini akan membahas cara membuat trigger untuk dua skenario umum dalam penjualan.


Soal tugas mengenai Trigger untuk :

  1. Mengupdate harga di tabel pesanan saat harga barang berubah
  2. Mengembalikan stok barang saat pesanan di hapus

1. Update Harga

Memastikan harga di pesanan_detail selalu sinkron dengan harga di tabel barang.


demonstrasi trigger ke-1

Tabel Barang

Tabel Pesanan Detail

  • Data pertama : pada tabel barang, PS 5 (id_barang = 1) memiliki harga Rp.7.000.000
  • Pada tabel pesanan_detail, dengan id_detail = 1 yang memiliki id_barang = 1, tercatat qty = 2 dengan harga Rp. 14.000.000

Sekarang mari kita lakukan pembaruan harga pada tabel barang dari tabel pesanan detail.

Kita ubah harganya menjadi 15.000.000

Setelah trigger dijalankan : Harga PS 5 di tabel barang yang sebelumnya Rp. 7.000.000 akan diperbarui menjadi Rp.15.000.000, secara otomatis


2. Return stok saat pesanan di hapus

Trigger ini akan mengembalikan stok barang ke jumlah semula saat pesanan di hapus.



demonstrasikan trigger ke-2

Tabel Barang
Tabel Pesanan Detail

  • Data pertama : pada tabel pesanan_detail, id_detail = 3 memesan id_barang = 3 (Kursi Gaming) dengan qty = 2.
  • Pada tabel barang, kursi gaming(id_barang = 3) memiliki stok sebanyak 21.

Sekarang kita akan menghapus pesanan tersebut menggunakan perintah :
DELETE FROM pesanan_detail WHERE id_detail = 3 ;

Setelah trigger dijalankan : data pesanan dengan id_detail = 3 akan di hapus dari tabel pesanan_detail. Secara otomatis, Trigger akan menambah stok di tabel barang. Stok Kursi Gaming akan meningkat menjadi : 21 + 2 = 23

Hasil akhirnya : pesanan dengan id_detail = 3 berhasil dihpus. Stok Kursi Gaming di tabel barang bertambah menjadi 23.










Komentar

Postingan populer dari blog ini

FUNGSI AGREGAT

ERD (Entity Relationship Diagram)