数据库--触发器

1.触发器是用户定义在表上的一类由事件驱动的特殊过程。一旦定义,任何用户对表的增,删,改操作均由服务器自动激活相应的触发器。

CREATE TRIGGER <触发器名>
{BEFORE | AFTER} <触发事件> ON  <表名>
FOR EACH {ROW | STATEMENT}
[WHEN <触发条件>]
<触发动作体>

创建表的用户才可以在表上创建触发器,一个表只能创建一定数量的触发器
同一模式下,触发器的名称必须是唯一的,并且触发器名和表名必须在同一模式下
触发事件可以是INSERT ,DELETE, UPDATE,或者几个的组合
2.定义一个BEFORE行级触发器,为教师表定义完整性规则“教授的工资不得低于4000,如果低于4000,自动改为4000”

CREATE TRIGGER Insert_Or_Update_Sal /*在教师表上定义触发器*/
    BEFORE INSERT OR UPDATE ON Teacher/*触发事件是插入或者更新操作*/
    FOR EACH ROW/*这是一个行级触发器*/
    AS BEGIN
        IF (new.Job='教授')AND (new.Sal<4000)     THEN
         new.Sal:=4000END IF;
    END;

同一个表上有多个触发器,执行顺序如下:
(1)执行该表上的BEFORE触发器
(2)激活触发器的SQL语句
(3)执行该表上的AFTER触发器
3.删除触发器

DROP TRIGGER <触发器名> ON <表名>
DROP TRIGGER Insert_Sal ON Teacher;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值