CREATE TRIGGER trigger_name
{BEFORE | AFTER} {INSERT | UPDATE | DELETE}
ON table_name
FOR EACH ROW
BEGIN
-- trigger body
END;
其中,trigger_name
是你为触发器指定的名称,{BEFORE | AFTER}
指定触发器在触发事件之前或之后执行,{INSERT | UPDATE | DELETE}
指定触发器与哪些操作相关,table_name
是触发器所属的表名。
触发器的主体部分包含在BEGIN
和END;
之间,你可以在其中编写你想要执行的逻辑。
以下是一个创建触发器的例子:
CREATE TRIGGER trigger_name
AFTER INSERT
ON employees
FOR EACH ROW
BEGIN
INSERT INTO audit_log (event_type, event_time, table_name, row_data)
VALUES ('INSERT', Now(), 'employees', CONCAT('Employee ID: ', NEW.id, ', Name: ', NEW.name));
END;
在该示例中,当向employees
表中插入新行时,触发器会在插入操作之后执行。它将在audit_log
表中插入一条记录,记录了触发事件的类型、时间、表名和插入的行数据。
请注意,触发器只能在具有适当权限的用户下创建。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。