Oracle数据库触发器类型简介(oracle触发器类型)
Oracle数据库可以使用触发器在数据发生更新,插入或删除操作时,自动执行相应的特定动作或SQL语句,从而提高工作效率。触发器分为BEFORE触发器和AFTER触发器两类。
BEFORE触发器可以将SQL语句或动作放在更新,插入或删除操作之前自动执行,从而做到更改数据前有效的控制它。AFTER触发器可以根据触发事件的操作情况,来做出反应,或者在发生更新,插入,或删除操作后实现相应的动作,触发器必须先创建,再将其绑定到某张表上的某事件上,才能起作用。
以下是用来创建Oracle触发器的示例代码:
CREATE OR REPLACE
TRIGGER update_trigger
BEFORE UPDATE OF salary
ON employee
FOR EACH ROW
BEGIN
INSERT INTO table2
(name,salary_before_update,salary_after_update)
VALUES
(:old.name, :OLD.salary, :NEW.salary);
END;
在以上示例当中,update_trigger就是我们要创建紧跟BEFORE UPDATE OF部分表示对salary字段所进行的更新操作进行触发,即在修改salary字段的时候将更新前的值和更新后的值都存入了另外一张table2表当中。
在应用中更新数据库表时,使用触发器是一个很有效和方便的方式,它可以加强数据库表的安全性,节省对表的查询操作,使应用任务更加简化。