美文网首页
MySQL触发器

MySQL触发器

作者: 老衲灬 | 来源:发表于2018-09-19 20:25 被阅读1次

    1、简介

    在MySQL中,提前设置好触发器,当用户执行指定SQL语句时自动触发。

    2、语法

    #修改SQL语句结束符
    delimiter //
    create trigger 触发器名称 before|after 事件 on 表名 for each row
    begin
    #SQL语句
    end //
    #改回SQL语句结束符
    delimiter ;
    

    before | after在执行增/改/删SQL语句执行 之前 或 之后 触发
    事件:update/delete/insert
    表名:声明哪张表被监控
    for each row:声明一次性影响多条数据则触发N次

    3、示例:

    创建表a和表b,当a表插入数据后,b表也自动插入数据
    create table a (id int)engine=myisam charset=utf8;
    create table b (id int)engine=myisam charset=utf8;
    
    #创建触发器
    drop trigger if exists t1;
    delimiter //
    #监控a表,当a表插入数据时执行该触发器
    create trigger t1 after insert on a for each row
    begin
    #SQL语句
    insert into b values(9);
    end //
    delimiter ;
    
    insert into a values (1);
    

    影响的行(for each row)
    insert into a values (1),(2),(3);

    4、触发器相关SQL语句

    删除触发器:drop trigger [if exists] 触发器名;
    显示所有触发器:show triggers;
    显示创建触发器的SQL语句:show create trigger 触发器名称;

    5、触发器关键字(new, old)

    相关文章

      网友评论

          本文标题:MySQL触发器

          本文链接:https://www.haomeiwen.com/subject/ankwnftx.html