MySQL之触发器

 

创建触发器:

CREATE TRIGGER trigger_name trigger_time trigger_eventON tb1_name FOR EACH ROW trigger_stmt

trigger_name 触发器名称

trigger_time 触发时间  两个选项 AFTER和   BEFORE

trigger_event 触发事件

INSERT   新行插入表时激活

UPDATE  更改某一行时激活

DELETE  删除某一行激活

 

tb1_name  表名

FOR EACH ROW 声明事件影响的每一行,都要激活触发器

trigger_stmt  触发动作(可用BEGIN.....END)

实例:

CREATE TRIGGER table1_insert AFTER INSERT ON table1 FOR EACH ROW

SET @str='TRIGGER IS WORKING';

 //每次插入一条记录,都会将变量str的值设为“TRIGGER IS WORKING”。

向table1中插入一行数据:

INSERT INTO table1 VALUES(10);

查看str的值:

SELECT @str;

 

 

 

创建触发器:t_afterinsert_on_tab1
作用:增加tab1表记录后自动将记录增加到tab2表中
DROP TRIGGER IF EXISTS t_afterinsert_on_tab1;
CREATE TRIGGER t_afterinsert_on_tab1
AFTER INSERT ON tab1
FOR EACH ROW
BEGIN

     if new.tab1_id is not null then
        insert into tab2(tab2_id) values(new.tab1_id);

     end if;
END;

测试一下
INSERT INTO tab1(tab1_id) values('0001');

看看结果
SELECT * FROM tab1;
SELECT * FROM tab2;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值