触发器简介:
触发器是当特定事件出现时自动执行的存储过程,特定事件可以是执行更新的DML语句和DDL语句
触发器不能被显式调用,只能被隐式触发
触发器的功能:
自动生成数据
自定义复杂的安全权限
提供审计和日志记录
启用复杂的业务逻辑
创建触发器的语法:
CREATE [OR REPLACE] TRIGGER trigger_name
AFTER | BEFORE | INSTEAD OF
[INSERT] [[OR] UPDATE [OF column_list]]
[[OR] DELETE]
ON table_or_view_name
[REFERENCING {OLD [AS] old / NEW [AS] new}]
[FOR EACH ROW]
[WHEN (condition)]
pl/sql_block;
触发器的组成部分:
触发器由三部分组成:
触发器语句(事件):定义激活触发器的DML事件和DDL事件
触发器限制:执行触发器的条件,该条件必须为真才能激活触发器
触发器操作(主体):包含一些SQL语句和代码,它们在发出了触发器语句且触发限制的值为真时运行
触发器类型:
替代触发器:
由于在ORACLE里,不能直接对由两个以上的表建立的视图进行操作。所以给出了替代触发器。它就是ORACLE 8专门为进行视图操作的一种处理方法。
DML触发器:
ORACLE可以在DML语句进行触发,可以在DML操作前或操作后进行触发,并且可以对