深入浅出Oracle触发器类型实例解析(oracle 触发器类型)

Oracle触发器是一种特殊的存储过程,是Oracle数据库通过一些事件自动执行一组SQL语句,成为一个特殊的存储过程,其主要作用是在某个表中的数据发生改变时,帮助用户自定义将某些事件记录到某个日志文件中。Oracle触发器分为两种:行级触发器和表级触发器。

一、行级触发器

行级触发器是指用户可以在行数据发生变化时,根据行发生变化时的条件,自动触发触发器存储过程。在Oracle中,行级触发器可以根据数据变化来实现数据库中表(表)的自动完成操作。

示例:

CREATE OR REPLACE TRIGGER test_trig

AFTER UPDATE OR DELETE ON emp

FOR EACH ROW

BEGIN

IF DELETING THEN

insert into log (‘删除操作’,’EMP表’,sysdate);

ELSE

insert into log (‘修改操作’,’EMP表’,sysdate);

END IF;

END;

二、表级触发器

表级触发器是指操作数据库或表(表)时,在表发生变化时触发该存储过程,它不需要指定某一行的条件,只要表中的数据发生变化,就可以触发触发器存储过程。

示例:

CREATE OR REPLACE TRIGGER test_trig2

AFTER INSERT OR DELETE OR UPDATE ON emp

BEGIN

insert into log ( ‘操作’, ‘EMP表’,sysdate);

END;

综上所述,Oracle触发器主要是在表(表)中操作发生改变时,对表或表中的数据发生变化时,自动触发一些操作或存储过程,以达到完成自动操作的目的。Oracle触发器有行级触发器和表级触发器,用户可以根据自身操作需求定义触发器,实现自动完成操作。


数据运维技术 » 深入浅出Oracle触发器类型实例解析(oracle 触发器类型)