Membuat Trigger di MySql

Trigger merupakan kumpulan script yang berhubungan dengan table, view ataupun skema yang dijalankan secara otomatis ketika terdapat event yang dijalankan. Event tersebut meliputi operasi yang biasa dilakukan dalam mengolah database, seperti :

  • DML (Data Manipulation Language) yang meliputi DELETE, INSERT atau UPDATE
  • DDL (Data Definition Language) yang meliputi CREATE, ALTER atau DROP
  • Operasi Database lainnya, seperti SERVERERROR, LOGON, LOGOFF, STARTUP atau SHUTDOWN)

Fungsi Trigger 

Terdapat beberapa fungsi trigger yang akan dijelaskan dibawah ini :

1. Integritas Data

Dengan adanya trigger, Anda dapat mempertahankan integritas table yang terdapat dalam database. Sebab, Anda dapat melakukan operasi-operasi yang berkaitan dengan pengolahan database, seperti INSERT, UPDATE dan DELETE.

2. Mencegah Error

Trigger dalam MySQL dapat mencegah terjadinya error dalam pengoperasian data. Jika terjadi error dalam pendefinisian trigger, error tersebut tidak mengganggu trigger yang sedang berjalan.

3. Membuat Tugas Kerja menjadi Terjadwal

Ketika trigger telah dijalankan, maka Anda dapat menggunakan berbagai bahasa pemrograman tanpa harus bingung bagaimana cara mengaksesnya.

4. Mencegah Proses Transaksi yang Tidak Sah

Dalam praktiknya, biasa trigger digunakan untuk melakukan proses transaksi. Anda dapat menyimpan record transaksi tersebut ke table lain (history) tanpa harus takut jika data tersebut di-update atau delete. Semua perubahan yang terjadi juga dapat diacak berdasarkan waktu pembuatannya.


Untuk lebih jelasnya langsung saja kita praktek !!!!

1.) Langkah yang peetama pastikan kalian sudah mempunyai database nya terlebih dahulu
2.) Setelah itu kita membuat tabel terlebih dahulu 
3.) Lalu ketikkan syntax seperti dibawah ini 

CREATE TABLE employees_audit (
    id INT AUTO_INCREMENT PRIMARY KEY,
    employeeNumber INT NOT NULL,
    lastname VARCHAR(50) NOT NULL,
    changedat DATETIME DEFAULT NULL,
    action VARCHAR(50) DEFAULT NULL
);



4. Setelah itu membuat tabel before update trigger sebagai berikut

CREATE TRIGGER before_employee_update 
    BEFORE UPDATE ON employees
    FOR EACH ROW 
 INSERT INTO employees_audit
 SET action = 'update',
     employeeNumber = OLD.employeeNumber,
     lastname = OLD.lastname,
     changedat = NOW();





5. lalu kita lihat trigger yg telah kita buat terlrbih dahulu




6.) Setelah itu kita coba update trigger dengan contoh seperti dibawah ini

UPDATE employees 
SET 
lastName = 'Phan'
WHERE
employeeNumber = 1056;





7.) Untuk melihat hasilnya ketikkan syntax seperti dibawah ini

SELECT * FROM employees_audit;











Komentar

Postingan populer dari blog ini

Langkah-Langkah Membuat 2 Tabel dan Menghubungkan di PHPMyAdmin

Langkah-Langkah Membuat Username & Password Di phpmyadmin dan Juga Membuat Database di phpmyadmin

Stored Procedure Dari MySQL.