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
-> );
Kita akan coba mengecek apakah table sudah berhasil dibuat dengan menggunakan query SHOW TABLES:
Selanjutnya kita akan membuat triggers dengan fungsi BEFORE UPDATE, berikut query nya:
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();
Fungsi trigger sudah berhasil dibuat coba kita tes dengan mengupdate salah satu data, berikut query nya:
UPDATE employees
-> SET
-> lastName = 'Phan'
-> WHERE
-> employeeNumber = 1056;
Berdasarkan fungsi trigger yang sudah kita buat, percobaan yang sudah kita lakukan akan masuk ke dalam table employees_audit, karena itu mari kita cek menggunakan query SELECT, berikut hasilnya:
2. Drop Triggers
Kita akan cek ada trigger apa saja dengan menggunakan query SHOW TRIGGERS, berikut hasilnya:
Selanjutnya kita akan menghapus fungsi trigger yang sudah kita buat dengan menggunakan query DROP TRIGGER nama_trigger, berikut hasilnya:
Komentar
Posting Komentar