Trigger
触发器是在特定事件(INSERT/UPDATE/DELETE)发生时自动执行的数据库代码,用于审计、级联与约束。
用途
在数据变更时自动执行逻辑,无需应用显式调用。
机制
BEFORE/AFTER + 行级/语句级触发器。事件触发时自动执行触发器函数。常用于审计日志、级联更新、复杂约束检查。但隐式执行难调试,可能级联导致意外。
用例
- 数据变更审计日志
- 级联更新与同步
- 复杂约束检查
- 物化视图自动刷新
示例
- 输入
AFTER UPDATE ON users → log change输出Change recorded automaticallyAudit trigger
常见错误
- Trigger cascades cause recursion and deadlocks
- Limit trigger depth and avoid cycles