要增加触发器,可以使用以下语法:
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
语句可以删除触发器。