标签:
触发器
触发器是许多关系数据库系统都提供的一项技术。在ORACLE系统里,触发器类似于过程和函数,都有声明,执行和异常处理的PL/SQL块。
1 触发器类型
触发器在数据库里以独立的对象存储,它与存储过程不同的是,存储过程通过其他程序来启动运行或者直接启动运行。而触发器是由一个事件来启动运行。即触发器是当某个事件发生时自动的隐式运行。并且触发器不能接受参数。所以运行触发器又叫触发或者点火。ORACLE时间指的是对数据库的表进行的INSERT,UPDATE及DELETE操作或对视图类似的操作.ORACLE将触发器的功能扩展到了触发ORACLE,如数据库的启动和关闭等
DML 触发器
ORACLE可以在DML语句进行触发,可以再DML操作前和操作后进行触发,并且可以对每个行或语句操作上进行触发
替代触发器
由于在ORACLE里,不能直接对由两个以上的表建立的视图进行操作。所以给出了替代触发器。
系统触发器
它可以在ORACLE数据库系统的事件中进行触发,如ORACLE系统的打开和关闭等
触发器组成
触发事件:即在何种情况下触发TRIGGER,例如INSERT UPDATE DELETE
触发时间:在触发事件前还是在触发事件后发生
触发器本身:触发器本身
触发频率 语句级或者行级(for each row 没有加就是语句级)
2
举例
1 Create or replace trigger salary_trg_rai
2 After insert on salary
3 For each row
4 declare
5 Begin
6 Dbms_output.put_line(‘员工ID:’ || :new.employee_id);
7 Dbms_output.put_line(‘工资月份:’ || :new.month);
8 Dbms_output.put_line(‘工资:’ || :new.amount);
9 Dbms_output.put_line(‘触发器已被执行’);
10 End;
标签:
原文地址:http://www.cnblogs.com/HJL085/p/5724292.html