欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MySql操作之触发器

程序员文章站 2022-03-08 16:03:48
什么是触发器?在MySql里面也就是对某一个表的一定的操作,触发某种条件(增删改等操作),从而自动执行的一段程序和web中学过的监听器很像。创建触发器语法:CREATE TRIGGER trigger_nametrigger_timetrigger_event ON tbl_nameFOR EACH ROWtrigger_stmt列1:创建两种表t1,t2两种表中都有id,name字段,新加t1表记录后自动添加t2CREATE TRIGGER triggen1aft....

什么是触发器?

在MySql里面也就是对某一个表的一定的操作,触发某种条件(增删改等操作),从而自动执行的一段程序和web中学过的监听器很像。

创建触发器

语法:

CREATE TRIGGER trigger_name
trigger_time
trigger_event ON tbl_name
FOR EACH ROW
trigger_stmt

 列1:创建两种表t1,t2两种表中都有id,name字段,新加t1表记录后自动添加t2

CREATE TRIGGER triggen1
after
insert ON t1
FOR EACH ROW
insert into t2(name) values(new.name);


说明:NEW 是新值,OLD 是旧值
INSERT 只有NEW
UPDATE有NEW和OLD
DELETE只有OLD
注意:一般情况下,Mysql默认是以;号作为结束执行语句。在创建触发器过程中需要用到";"。为了解决这个问题,可以用到delimiter语句。例如delimiter //,可以将结束符号变成//,创建完触发器后再执行delimiter ;将结束符号改回成;

 例2:创建t3表演示NEW和OLD的区别


delimiter //
CREATE TRIGGER triggen2
after
update ON t1
FOR EACH ROW
begin
insert into t2(name) values(new.name);
insert into t3(name) values(old.name);
end //
delimiter ;

查看触发器

show TRIGGERS

删除触发器

DROP TRIGGER 触发器的名字

 

本文地址:https://blog.csdn.net/qq_41874088/article/details/110726895