触发器吧。。。比较耗费资源的东东。。。如果能用自带的完整性约束或者检查约束之类的东西,那就不要用触发器了。。。
如果一个触发器超过了60行,额。。那就用个存储过程,或者从一个触发器中调用一个触发器吧。。只有集中地,全局的时候,才用触发器,还有最后一点要注意,千万不要定义recursive触发器。。。哈哈,比如你在一个更新操作上加一个触发器,而这个触发器内包含一个更新操作,那就等着内存耗光吧。。。
第一个列子:
create or replace trigger print_salary_changesbefore delete or insert or update on empfor each rowwhen(new.empno>0)declaresal_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;
时间: 2024-09-19 15:29:52