Oracle数据库中的触发器类型简介(oracle触发器类型)

Oracle数据库中的触发器类型简介

Oracle数据库中的触发器是被动性程序,它们可以在应用程序程序中执行特定的动作。这些动作可能包括更新、插入和删除操作,它们在应用程序中的用户发出的(触发)操作时被触发或执行。Oracle数据库中的触发器类型主要有以下几类:

1、 DML触发器:DML触发器会在数据库表上的数据发生改变的时候被触发,示例:

CREATE TRIGGER trigger_name 
BEFORE INSERT OR UPDATE OR DELETE
ON table_name
FOR EACH ROW
BEGIN
--Do Something
END;

2、DDL 触发器:DDL触发器是在我们修改数据库结构时被触发,其中一些比较常用的操作有:CREATE、 ALTER、 DROP。示例:

CREATE OR REPLACE TRIGGER trigger_name 
BEFORE CREATE ON table_name
FOR EACH ROW
BEGIN
--Do Something
END;

3、系统触发器:系统触发器会在一个系统变量改变时被触发,这些变量包含了系统的全局变量,比如系统的登录、错误信息、LOGON日志等。示例:

CREATE OR REPLACE TRIGGER trigger_name 
AFTER LOGON ON DATABASE
BEGIN
--Do Something
END;

4、级联触发器:级联触发器是在一个表的数据发生改变的时候,用来在另一个表上执行同样的操作,从而可以实现表之间的数据一致。示例:

CREATE OR REPLACE TRIGGER trigger_name 
AFTER UPDATE ON table_name
FOR EACH ROW
BEGIN
UPDATE table_name2 SET col_name =
:NEW.col_name WHERE col_name = :OLD.col_name;
END;

以上就是Oracle数据库中的触发器类型简介,Oracle数据库中可以使用触发器来完成数据的同步,实现表和表之间的数据一致,是一个非常有用的工具。


数据运维技术 » Oracle数据库中的触发器类型简介(oracle触发器类型)