mysql 触发器的语法:create trigger [触发器名]before/after [insert/update/delete] on [表名]for each row[触发器主体]
MySQL 触发器的语法
触发器是一种数据库对象,用于在插入、更新或删除表中的记录时自动执行特定操作。MySQL 中触发器的语法如下:
CREATE TRIGGER [触发器名] BEFORE/AFTER [INSERT/UPDATE/DELETE] ON [表名] FOR EACH ROW [触发器主体]
语法参数解释:
- 触发器名:为触发器指定一个名称。
- 时机:指定触发器在操作发生前(BEFORE)或后(AFTER)执行。
- 事件:指定触发器在哪些操作(INSERT/UPDATE/DELETE)上触发。
- 表名:指定要为其创建触发器的表。
- 触发器主体:触发器执行的动作,包括 SQL 语句和控制流语句。
- FOR EACH ROW:指定触发器对每个受影响的行执行一次。
示例:
以下触发器示例会在向 customers 表中插入新记录时更新 last_updated 列:
CREATE TRIGGER update_last_updated BEFORE INSERT ON customers FOR EACH ROW SET last_updated = NOW();
详细内容:
- 触发器时机:触发器可以在操作之前(BEFORE)或之后(AFTER)执行。
- 触发器事件:触发器可以在 INSERT、UPDATE 或 DELETE 操作上触发。
-
触发器主体:触发器主体可以包含以下内容:
- SQL 语句(例如,更新、插入或删除其他表中的记录)。
- 控制流语句(例如,IF-ELSE、CASE 等)。
- 使用 OLD 和 NEW 关键字访问触发操作前后的记录值。
- 限制:触发器不能引用同一表中的其他触发器。
通过创建触发器,可以自动化数据库中的任务,减少重复操作并确保数据完整性。
以上就是mysql创建触发器的语法的详细内容,更多请关注php中文网其它相关文章!
版权声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系 yyfuon@163.com