SQL触发器

定义

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


创建与使用触发器

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

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;


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

CREATE TRIGGER触发器名BEFORE | AFTER触发事件

ON表名FOR EACH ROW

BEGIN

执行语句列表

END


DELIMITER |

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

|

DELIMITER ;


查看触发器

1、SHOW TRIGGERS语句查看触发器信息 SHOW TRIGGERS;

2、在triggers表中查看触发器信息


删除触发器

DROP TRIGGER触发器名;DROP TRIGGER trig_book2 ;

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容