【Oracle 触发器】(6)触发器应用场景--数据的备份和同步

时间:2021-10-05 05:12:05

触发器应用场景--数据的备份和同步
当给员工涨完工资后,自动备份新的工资到备份表中
行级触发器

创建备份表:

1 create table emp_back as select * from emp1; --创建备份表

 

创建触发器:

 1 create or replace trigger sync_salary
 2 after update
 3 on emp1
 4 for each row
 5 declare
 6 begin 
 7     --当主表更新后,自动更新备份表
 8     update emp_back set sal = :new.sal where empno= :new.empno;
 9 
10 end;
11 /

 

检测:

更新前:

1 select sal from emp1 where empno=7839;--更新前
2 
3 select sal from emp_back where empno=7839;--更新前

【Oracle 触发器】(6)触发器应用场景--数据的备份和同步

 

更新:

1 update emp1 set sal=sal+100 where empno=7839; --更新数据

 

更新后:

1 select sal from emp1 where empno=7839;--更新后
2 
3 select sal from emp_back where empno=7839;--更新后

【Oracle 触发器】(6)触发器应用场景--数据的备份和同步