plsq程序设计--触发器

[color=red][b]首先,创建一张log表,用于记录对emp2表的操作[/b][/color]
create table emp2_log
(
uname varchar2(20),
action varchar2(10),
atime date
);


[color=red][b]创建触发器,触发器必须依附于一张表存在[/b][/color]
create or replace trigger trig
--没有 for each row参数,出发其只会执行一次
--after指在执行操作后,还额可以是befor
--insert or delete or update on emp2,对emp2表进行insert or delete or update操作时,激活触发器
after insert or delete or update on emp2
--after insert or delete or update on emp2 for each row
--如果加上 for each row 的话,触发器会按照被影响数据数量来决定执行次数。
begin
if inserting then
insert into emp2_log values(USER, 'insert', sysdate);
elsif updating then
insert into emp2_log values(USER, 'update', sysdate);
elsif deleting then
insert into emp2_log values(USER, 'delete', sysdate);
end if;
end;


[color=red][b]检验触发器[/b][/color]
-- 执行(5)多次update操作
update emp2 set sal = sal * 2 where deptno = 30;

-- for each row打开,则会增加5条记录
-- for each row关闭,则会增加1条记录
select * from emp2_log;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值