触发器与存储过程详解
触发器与存储过程详解
1. 触发器(Trigger)基础概念
1.1 定义与特性
go专栏:https://duoke360.com/tutorial/path/golang
触发器是数据库中的一种特殊存储程序,它在特定数据库事件(如INSERT、UPDATE、DELETE)发生时自动执行。触发器具有以下核心特性:
- 事件驱动:与表事件绑定,无需显式调用
- 自动执行:满足条件时由DBMS自动触发
- 事务性:通常作为触发语句所在事务的一部分
- 无参数:不接受任何输入参数
关键结论:触发器本质上是"数据库事件监听器",实现了事件-动作模型在数据库层的映射
1.2 触发器类型
根据触发时机可分为:
- BEFORE触发器:在操作执行前触发
- AFTER触发器:在操作执行后触发
- INSTEAD OF触发器:替换原操作执行(主要用于视图)
根据触发操作可分为:
- DML触发器:响应数据操作语言事件
- DDL触发器: