触发器

触发器的引入

  触发器(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;

 

 

 

posted @ 2019-11-25 22:23  不吃海带丝  阅读(147)  评论(0编辑  收藏  举报