Mysql中关于触发器的操作实例详解

触发器的操作:

1.触发器的创建:

(1).创建包含一条语句的触发器

create trigger trigger_name before|after trigger_event on table_name for each row trigger_stmt;

trigger_event表示操作事件(insert,update,delete);

trigger_stmt表示执行的语句

例子:

create trigger tri_test after insert on t1 for each row insert into t1_log values(USER(),'insert record into t1',now());   // 表示的是在对表t1的每一行进行插入操作之后,在表t1_log中插入一条数据,数据是values之后的内容,USER()指的是当前的用户(内置函数),now()当前时间.

(2).创建包含多条语句的触发器

create trigger trigger_name before|after trigger_event on table_name for each row BEGIN trigger_stmt end;

例子:

delimiter $$  create trigger tri_test  after insert on t1 for each row  BEGIN  insert into t1_log values(USER(),'after insert table t1',now());  insert into t1_log values(USER(),'after insert table t1',now());  END  $$

执行完之后执行 delimiter ;恢复分隔符 ;

delimiter指的是切换分隔符,因为多条语句之间是用分号隔开,所以要切换默认分隔符,执行完语句之后再切换回去.

2.查看触发器:

show triggers /G;  在information_schema数据库中查询  use information_schema;  select * from TRIGGERS where trigger_name = 'tri_test' G;

3.触发器的修改

触发器是不能修改的,只能将原来的删除,然后重新建立新的触发器.

4.触发器的删除:

drop trigger trigger_name;

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享