mysql 触发器

 创建触发器

CREATE TRIGGER 触发器名称 

触发条件 /* insert 插入 / delete 删除 / update 更新 */

触发时间 /* before 在检查约束前触发 /after 在检查约束后触发 */
ON 被监控表名 

FOR EACH ROW /* 固定句式 */

/* BEGIN 如果只有一行语句可以省略 */ 语句; /* END 如果只有一行语句可以省略 */

 

优缺点

优点:自动化/支持回滚保持保持数据完整性

缺点:触发器针对每一行,对增删改非常频繁的表上不要使用触发器,非常消耗资源。

 

过程变量

OLD 为只读,NEW 则可以在触发器中使用SET赋值。

set new.字段名 = 值;

 

删除触发器  

DROP TRIGGER IF EXISTS 触发器名;

 

查看所有触发器

show triggers\G;

select
trigger_name as '名称' , event_object_schema as'所属库', event_object_table as'所属表', event_manipulation as '触发事件', action_timing as '触发​​器时机', action_statement as'触发的语句' from information_schema.triggers ORDER BY action_statement;

 

posted on 2021-07-02 10:09  新意  阅读(63)  评论(0)    收藏  举报

导航