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

    触发器的引入

      触发器(TRIGGER)是由事件来触发某个操作。这些事件包括 INSERT 语句、UPDATE 语句和 DELETE 语句。
      当数据库系统执行这些事件时,就会激活触发器执行相应的操作。

    创建与使用触发器

      创建只有一个执行语句的触发器

        CREATE TRIGGER 触发器名 BEFORE | AFTER 触发事件
        ON 表名 FOR EACH ROW 执行语句

      

    CREATE TRIGGER trig_book AFTER INSERT 
         ON t_book FOR EACH ROW
            UPDATE t_bookType SET bookNum=bookNum+1 WHERE new.bookTypeId=t_booktype.id;       
    INSERT INTO t_book VALUES(NULL,'java好',100,'ke',1);

      创建有多个执行语句的触发器

        CREATE TRIGGER 触发器名 BEFORE | AFTER 触发事件
        ON 表名 FOR EACH ROW
        BEGIN
          执行语句列表
        END

    CREATE TRIGGER trig_book2 AFTER DELETE 
        ON t_book FOR EACH ROW
        BEGIN
           UPDATE t_bookType SET bookNum=bookNum-1 WHERE old.bookTypeId=t_booktype.id;
           INSERT INTO t_log VALUES(NULL,NOW(),'在book表里删除了一条数据');
           DELETE FROM t_test WHERE old.bookTypeId=t_test.id;
        END 


    DELETE FROM t_book WHERE id=5;


    查看触发器

       SHOW TRIGGERS 语句查看触发器信息

    SHOW TRIGGERS;

       在triggers表中查看触发器信息

    删除触发器

          DROP TRIGGER 触发器名

    drop TRIGGER     t_bt_num;
  • 相关阅读:
    Java实现蓝桥杯突击战
    Java实现蓝桥杯突击战
    Java实现蓝桥杯勇者斗恶龙
    Java实现蓝桥杯勇者斗恶龙
    利用cmake来搭建开发环境
    cmake总结
    cmake手册详解----转
    Boost::filesystem 使用小笔记
    Boost学习之可移植路径操作--filesystem
    C++ 檔案、資料夾、路徑處理函式庫:boost::filesystem
  • 原文地址:https://www.cnblogs.com/linbin7/p/11931200.html
Copyright © 2011-2022 走看看