oracle开发之触发器

触发器吧。。。比较耗费资源的东东。。。如果能用自带的完整性约束或者检查约束之类的东西,那就不要用触发器了。。。

如果一个触发器超过了60行,额。。那就用个存储过程,或者从一个触发器中调用一个触发器吧。。只有集中地,全局的时候,才用触发器,还有最后一点要注意,千万不要定义recursive触发器。。。哈哈,比如你在一个更新操作上加一个触发器,而这个触发器内包含一个更新操作,那就等着内存耗光吧。。。

第一个列子:

create or replace trigger print_salary_changes

before delete or insert or update on emp

for each row 

  when(new.empno>0)

 declare 

  sal_diff   number;

 begin

sal_diff := :new.sal -:old.sal;

dbms_output.put ('old  salary :' || :old.sal);

dbms_output.put('new  salary:' || :new.sal);

dbms_output.put_line('defference' || sal_diff);

 end;    

 

你可能感兴趣的:(oracle,delete,存储,insert,each)