Selasa, 29 Oktober 2024

TRIGGER MY-SQL

 TRIGGER/PEMICU

Trigger dalam MySQL adalah objek database yang secara otomatis menjalankan satu atau lebih pernyataan SQL ketika suatu peristiwa tertentu terjadi pada tabel. Peristiwa ini biasanya berupa operasi DML (Data Manipulation Language) seperti INSERT, UPDATE, atau DELETE.

Berikut adalah perbedaan trigger before dan after :

1. Trigger `BEFORE`

- Eksekusi: Dijalankan sebelum operasi `INSERT`, `UPDATE`, atau `DELETE` dilaksanakan.

- Penggunaan: Cocok untuk melakukan validasi atau modifikasi data sebelum data dimasukkan atau diubah. Misalnya, Anda bisa memeriksa nilai yang akan dimasukkan dan mengubahnya jika diperlukan.

Contoh: Mengatur nilai default untuk kolom jika nilai yang akan dimasukkan adalah `NULL`.

2. Trigger `AFTER`

- Eksekusi: Dijalankan setelah operasi `INSERT`, `UPDATE`, atau `DELETE` selesai.

- Penggunaan: Berguna untuk melakukan tindakan yang tergantung pada hasil operasi, seperti mencatat perubahan ke dalam tabel audit atau memperbarui data di tabel lain berdasarkan perubahan yang terjadi.

Contoh: Mencatat informasi tentang baris yang baru saja dihapus ke dalam tabel log.

Alasan perlu membuat trigger insert update dan delete :

1. Menjaga Integritas Data: Memastikan data yang dimasukkan atau diubah memenuhi aturan tertentu.

2. Mencatat Perubahan: Membuat log untuk setiap perubahan yang terjadi, berguna untuk audit dan pelacakan riwayat data.

3. Otomatisasi Tugas: Melakukan perhitungan atau pembaruan otomatis pada tabel terkait.

4. Meningkatkan Kinerja: Mengurangi beban aplikasi dengan memindahkan logika bisnis ke dalam database.

5. Keamanan Data: Mencegah tindakan tidak sah, seperti penghapusan data penting.

Tugas tutorial Trigger

1. membuat database dbobat yang berisi tabel obat, obatmasuk, obat keluar 






2.  di dalam tabel obat berisi id_obat, nama_obat, dan stok












3. di dalam tabel obatkeluar berisi id_ok, id_obat, tanggal_keluar, dan jumlah















4. di dalam tabel obatmasuk berisi id_om, id_obat, tanggal_masuk, dan jumlah






















Trigger







FUNCTION

 FUNCTION Dalam MySQL , fungsi (function) merujuk pada suatu prosedur yang mengembalikan suatu nilai sebagai hasil dari eksekusi beberapa p...