温馨提示×

mysql触发器怎么创建

小亿
112
2023-07-28 01:17:48
栏目: 云计算

要创建一个MySQL触发器,你可以使用以下语法:

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是触发器所属的表名。

触发器的主体部分包含在BEGINEND;之间,你可以在其中编写你想要执行的逻辑。

以下是一个创建触发器的例子:

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表中插入一条记录,记录了触发事件的类型、时间、表名和插入的行数据。

请注意,触发器只能在具有适当权限的用户下创建。

0