当前位置: 移动技术网 > IT编程>数据库>Oracle > oracle触发器demo分享

oracle触发器demo分享

2018年02月05日  | 移动技术网IT编程  | 我要评论

--触发器

--语句级触发器(只执行一次)

--触发发生在添加之前

create or replace trigger tg1
after insert
on emp01
declare
   n int;
begin
   select count(*) into n from emp01;
   dbms_output.put_line('emp01表中共有'||n||'条记录!');
end;
insert into emp01 values(1,'小米','学生',2025,'3-10月-2015',1000,200,10);

--行级触发器
--delete 将删除的数据放在old表中
--insert 将新的数据放在new表中
--update 将原始的数据放在old表中,再在new表中存放新值

create table emp02 as select * from emp01 where 1<>1;
select * from emp02;
select * from emp01;

create or replace trigger tg2
after delete
on emp01
for each row
declare
begin
  insert into emp02 values(:old.empno,:old.ename,:old.job,:old.mgr,:old.hiredate,:old.sal,:old.comm,:old.deptno);
end;    
delete from emp01 where empno=7369;
select * from emp02;

select * from emp01;

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网