Nama : Agnes Rantika
NPM : 19312155
Kelas : IF 19 D
Mata Kuliah : Pemrograman Basis Data
Teori Pemrograman Basis data
* Soal :
Buatlah sebuah trigger dengan nama simpan_orderitems, trigger aktif setelah menyimpan data ke dalam tabel orderitems. Action pada trigger adalah merubah stock pada tabel products (stok berkurang).
* Jawaban :
Query Trigger simpan_orderitems
* Penjelasan :
Untuk membuat sebuah trigger dengan menuliskan CREATE TRIGGER <Nama_Trigger> untuk nama bisa disesuaikan dengan soal ataupun keinginan, trigger tersebut akan aktif ketika kita memasukan data ke dalam table orderitems nah darimana tahu itu akan aktif saat memasukan data. penjelasannya ada di query AFTER INSERT.
Lalu selanjutnya adalah mendeklarasikan sebuah variable idProduct, totalBuy yang akan diberikan nilai berdasarkan table inserted tidak berdasarkan table actual (asli), Query selanjutnya adalah mengurangi stok yang ada di dalam table products dan menambahkan log penjualan kedalam table log_products ketika trigger dijalankan.
Data table products dan log_products sebelum penambahan
melakukan penambahan ke dalam table order terlebih dahulu
Lalu, menambahkan data apa saja yang dibeli oleh customer 04
Ketika melakukan penambahan data ke dalam table orderitems otomatis trigger dijalankan serta stok di dalam table products berkurang dan penambahan log_products.
* Soal 4 :
Buatlah sebuah trigger dengan nama hapus_orderitems, trigger aktif setelah menghapus data yang ada pada tabel orderitems. Action pada trigger adalah merubah stock pada table products (stock bertambah).
* Jawaban :
Query Trigger hapus_orderitems
* Penjelasan :
Sama dengan soal nomor 3 untuk membuat sebuah trigger dengan menuliskan CREATE TRIGGER <Nama_Trigger>, trigger tersebut akan aktif ketika kita menghapus data dalam table orderitems nah darimana tahu itu akan aktif saat menghapus data. penjelasannya ada di query AFTER DELETE.
Lalu selanjutnya adalah mendeklarasikan sebuah variable idProduct,cancelBuy kebalikan dari no 3 yang akan diberikan nilai berdasarkan table deleted tidak berdasarkan table actual (asli), query selanjutnya adalah menambahkan stok yang ada di dalam table products dan menambahkan log tidak jadi beli kedalam table log_products ketika trigger dijalankan.
Data table products,orderitems dan log_products sebelum penghapusan
Melakukan penghapusan data
Ketika melakukan penghapusan data dari dalam table orderitems otomatis trigger dijalankan serta stok di dalam table products bertambah kembali seperti semula dan penambahan log_products.

Tidak ada komentar:
Posting Komentar