数据库——触发器(学习笔记)

一、触发器的定义:

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

二、创建与使用触发器:

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

例:创建一个trig_book触发器,该触发器在表t_book插入一条数据后,对表t_bookType的bookNum数量对应的bookTypeId会自动加1

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);

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

例子:

DELIMITER | 数据库语句 | DELIMITER;//告诉数据库这时一条语句内容

new old 触发的两个过度变量;new:新增一条语句的新增对象;old:删除一条语句的删除对象;

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 ;
DELETE FROM t_book WHERE id=5;

三、查看触发器

3.1SHOWTRIGGERS 语句查看触发器信息

SHOW TRIGGERS;

3.2 在 triggers 表中查看触发器信息

DROP TRIGGER trig_book2 ;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值