时间:2021-07-01 10:21:17 帮助过:3人阅读
示例如下:
CREATE TRIGGER tri_diary BEFORE INSERT ON t_dept FOR EACH ROW INSERT INTO t_diary VALUES(NULL,‘t_dept‘,NOW());
当向部门表t_dept插入任意一条记录时,就会在插入操作之前向表t_diary中插入当前时间记录。
2.2 创建包含多条执行语句的触发器
CREATE TRIGGER trigger_name BEFORE | AFTER trigger_event ON table_name FOR EACH ROW BEGIN trigger_stmt END;
示例如下:
DELIMITER $$ CREATE TRIGGER tri_diary BEFORE INSERT ON t_dept FOR EACH ROW BEGIN INSERT INTO t_diary VALUES(NULL,‘t_dept‘,NOW()); INSERT INTO t_diary VALUES(NULL,‘t_dept‘,NOW()); END $$ DELIMITER;
上面示例中,首先通过"DELIMITER $$"语句设置结束符为"$$",然后再关键字BEGIN和END之间编写执行语句列表,最后通过"DELIMITER ;"语句将结束符号还原成默认结束符";"。
3. 查看触发器
3.1 通过SHOW TRIGGERS语句查看触发器
SHOW TRIGGERS会显示所有触发器的一个列表。
3.2 通过查看系统表triggers实现查看触发器。
4. 删除触发器
DROP TRIGGER trigger_name;
mysql之对触发器的操作
标签: