zoukankan      html  css  js  c++  java
  • mysql触发器

    mysql触发器四要素;

    • 监视对象:监视那张表?
    • 监视操作:监视表的insert,update,delete操作
    • 触发操作:执行什么操作?
    • 触发时间:after,before

    创建触发器语法:

    create trigger trigger_name(触发器名称,随便起)

    after/before(触发时间) insert/update/delete(监视操作) on table_name(监视对象)

    begin

    sql语句(触发操作)

    end

    注意:

    对insert而言,新插入的行用new来表示,行中每一列的值用new.列名来表示
    对于delete而言,删除的行用old来表示,行中每一列的值用old.列名来表示
    对于update而言,被修改的行,修改前的数据,用old来表示,old.列名;修改后的数据,用new来表示,new.列名
     
    after是先完成数据的增删改,再触发,触发中的语句晚于数据的增删改;
    before是先触发再做数据的增删改,触发中的语句先于监视的增删改;

    删除触发器语法:

    Drop trigger triggerName;

    显示已有触发器语法:
    Show triggers
     
    举例:创建触发器insert_tri,当表a中插入新记录时,往表b也添加一条记录
    create trigger insert_tri
    after insert on a
    begin
    inser into b values(new.列1,new.列2........);
    end
  • 相关阅读:
    C++的XML编程经验――LIBXML2库使用指南
    C/C++:sizeof('a')的值为什么不一样?
    Linux core dump file详解
    非阻塞socket的连接
    Java环境设置、HelloWorld例子、Ant环境及运行
    linux下杀死进程命令
    IP协议详解
    内置函数(上)
    异常处理
    递归函数与二分法
  • 原文地址:https://www.cnblogs.com/yinz/p/3737299.html
Copyright © 2011-2022 走看看