- MySQL触发器(Trigger)是一种特殊的存储过程,
- 它与表有关,当表上的特定事件(insert,update,delete)发生时,触发器会自动执行。
- 可以使用触发器来实现数据约束,数据验证,数据复制等功能
一.语法:
创建:
create trigger 触发器名称
{before | after } {insert | update | delete} -- 触发器类型和事件
on 表名称
for each row -- 触发器的作用范围
begin
-- 触发器执行的操作
end;
例如:
查看:
show triggers;
删除:
drop trigger trigger_name;
二.触发器的应用场景
触发器的应用场景包括但不限于以下几种:
强制实施业务规则:通过在触发器中编写逻辑,可以在特定的表上自动执行业务规则,例如检查输入的数据是否符合要求,或者限制某些操作的执行。
记录日志变更:通过在触发器中编写逻辑,可以在特定的表上自动记录数据的变更情况,例如记录数据的修改时间、修改人等信息。
复杂的默认值计算:通过在触发器中编写逻辑,可以在特定的表上自动计算默认值,例如根据其他字段的值计算出一个新的字段的值。
数据同步:通过在触发器中编写逻辑,可以在多个表之间自动同步数据,例如在一个表中插入一条数据时,自动在另一个表中插入相应的数据。
数据校验:通过在触发器中编写逻辑,可以在特定的表上自动校验数据的正确性,例如检查数据的唯一性、完整性等。