Function adalah sekumpulan instruksi yang dirancang untuk melakukan tugas tertentu secara otomatis.Dalam database, Function sering digunakan untuk menghitung, memproses, atau mengembalikan nilai tertentu, seperti menghitung jumlah barang dengan SUM() atau COUNT(). Soal 1. Buat function untuk menghitung jumlah barang dari semua data barang. 2. Buat function untuk menghitung jumlah barang dari semua data barang, tambah 1 parameter untuk batas stok. Jadi Count data yang stok nya dibawah inputan.
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 menggenai Trigger untuk :
1. mengupdate harga di tabel pesanan saat harga barang berubah
2. mengembalikan stok barang saat pesanan dihapus
1. Trigger update harga
Trigger ini akan memastikan harga di pesanan_detail selalu sinkron dengan harga di tabel barang.
demonstrasi trigger ke-1
Tabel Barang
Tabel Pesanan Detail
- Data awal: Di tabel barang, PS 5 (id_barang = 1) memiliki harga Rp. 7.000.000
- Di tabel pesanan_detail, dengan id_detail = 1 yang memiliki id_barang = 1, tercatat qty = 2 dengan harga Rp. 14.000.000
Sekarang kita akan memperbarui harga di 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. Trigger Return Stok saat Pesanan Dihapus
Trigger ini akan mengembalikan stok barang ke jumlah semula saat pesanan dihapus.
demontrasi kan trigger ke-2
Tabel Barang
Tabel Pesanan Detail
- Data awal: Di tabel pesanan_detail, id_detail = 3 memesan id_barang = 3 (Kursi Gaming) dengan qty = 2.
- Di 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 dihapus 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 dihapus. Stok Kursi Gaming di tabel barang bertambah menjadi 23.








Komentar
Posting Komentar