Oracle数据库中的触发器类型简介(oracle触发器类型)
Oracle数据库中的触发器是SQL语句,可以自动在响应特定条件时执行。它可以以程序的方式自动响应数据库中的Schema修改,从而提供许多很好的功能,如审计,安全特性等等。在Oracle数据库中,触发器的工作方式提供了两种类型:行级触发器和表级触发器。
行级触发器是基于每一行数据而调用的,在执行UPDATE,DELETE或INSERT的时候会触发它们。它仅有当前行作为参数,正在更新的值可以作为新值参数来使用。典型的行级触发器是在数据库表中插入记录时,自动将创建时间和更新时间插入记录。它们通常使用下面这个语法定义:
CREATE OR REPLACE TRIGGER trigger_name
BEFORE INSERT OR UPDATE OR DELETE ON table_name
FOR EACH ROWBEGIN
-- trigger codeEND;
表级触发器的执行会在每次受影响行的INSERT,UPDATE或DELETE发生时,执行一次。它们可以访问受影响的行集合,但不能访问特定行,所以无法宒義每行的新值。表级触发器使用下面这个语法定义:
CREATE OR REPLACE TRIGGER trigger_name
BEFORE INSERT OR UPDATE OR DELETE ON table_name
BEGIN -- trigger code
END;
Oracle数据库中的触发器可以实现自动化管理,实现灵活的审计和安全功能。它可以以程序的方式响应Schema修改,提升了系统的灵活性。Oracle数据库中的触发器提供了两种类型:行级触发器和表级触发器,使用按照相应的语法定义,十分方便使用。