什么是MySQL觸發器
MySQL觸發器是一種特別的存儲過程,用于在特定的數據庫事件(如插入、刪除或更新數據等)發生時自動執行特定的操作。
MySQL觸發器多個事件
MySQL觸發器可以通過使用多個事件來執行多個操作。可以在觸發器中使用INSERT、DELETE和UPDATE關鍵字定義觸發器。可以使用以下語法來定義多個事件的觸發器:
CREATE TRIGGER trigger_name
BEFORE/AFTER(event1, event2, event3, ...)
ONtable_name FOR EACH ROW
BEGIN
trigger_body;
END;
其中的event1, event2和event3等表示多個事件。通過將多個事件分別使用逗號分隔開來實現多個事件觸發器。執行的操作也與普通的觸發器相似。
多個事件觸發器使用實例
下面是一個多個事件觸發器的示例:
CREATE TRIGGER employee_trigger
AFTER INSERT, UPDATE, DELETE
ONemployee
FOR EACH ROW
BEGIN
IF (NEW.salary > OLD.salary) THEN
INSERT INTO salary_history VALUES (NOW(), NEW.employee_id, NEW.salary);
END IF;
END;
上述觸發器適用于employee表,當在表中插入、刪除或更新數據時,會自動將相關信息插入到salary_history表中。