创建触发器:
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
END;
测试一下
INSERT INTO tab1(tab1_id) values('0001');
看看结果
SELECT * FROM tab1;
SELECT * FROM tab2;