要增加觸發器,可以使用以下語法:
CREATE TRIGGER trigger_name
{BEFORE | AFTER} {INSERT | UPDATE | DELETE} ON table_name
FOR EACH ROW
BEGIN
-- 觸發器執行的邏輯代碼
END;
其中,trigger_name是觸發器的名稱,BEFORE或AFTER表示觸發器的執行時間,INSERT、UPDATE或DELETE表示觸發器的事件類型,table_name是觸發器所屬的表名。
在BEGIN和END之間編寫觸發器執行的邏輯代碼。
以下是一個示例,創建一個在orders表上的AFTER INSERT觸發器,每次插入新記錄時自動更新orders_count表中的訂單數量:
CREATE TRIGGER update_orders_count
AFTER INSERT ON orders
FOR EACH ROW
BEGIN
UPDATE orders_count SET count = count + 1;
END;
注意:
觸發器必須在數據庫中的表上創建,只能在表級別使用。
觸發器可以在BEFORE或AFTER事件之前或之后執行。
觸發器可以在INSERT、UPDATE或DELETE事件發生時執行。
FOR EACH ROW表示觸發器針對每一行記錄執行。
觸發器內部可以使用OLD和NEW關鍵字引用舊值和新值。
觸發器可以包含各種SQL語句和流程控制語句。
使用DROP TRIGGER trigger_name語句可以刪除觸發器。