触发器的学习

解决实际问题:

      在应用开发中,有时候数据的操作保存是在用户登录系统之后进行操作,有时候数据可能由系统管理员直接操作,这种情况下会导致前后数据不一致(假如在系统中,删除一条数据,是从两个表中进行删除。如果系统管理员在数据库中进行删除可能只删除一条,在这种情况下会造成前后端数据的不一致)。这时候,可以在表中增加触发器。

在Oracle中提供5种类型的触发器:语句触发器、行触发器、instead of 触发器、系统条件触发器和用户触发器

1.创建语句级触发器(只执行一次)

create or replace trigger tri_yj
before update  on stu  //只在修改的条件下触发
begin
    if updating then
        dbms_output.put_line('触发语句触发器');
    end if;
end;


create or replace trigger tri_yj
before insert or update or delete on stu  //在插入、修改、和删除的情况下执行
begin
    if  updating or inserting or deleting then
        dbms_output.put_line('触发语句触发器');
    end if;
end;

2. 创建行级触发器(执行多次)

CREATE OR REPLACE TRIGGER TRI_HJ
AFTER UPDATE OR DELETE
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值