Oracle数据库触发性入门

一 什么是触发器

数据库的触发器是一个与表相关联的、存储的PL/SQL程序。
每当一个特定的数据操作语句(insert、update、delete)在指定的表上发出时,Oracle自动地执行触发器中定义的语句序列。
 
二 触发器的应用场景 
1、复杂的安全性检查
2、数据的确认
3、数据库审计——基于值得审计
4、数据的备份和同步


 
 
三 触发器的语法
CREATE [or REPLACE] TRIGGER 触发器名
{BEFORE|AFTER}
{DELETE|INSERT|UPDATE}
ON 表名
[FOR EACH ROW[WHEN(条件)]]
PLSQL块
 
四 触发器的类型
1、语句级触发器:在指定的操作语句操作前或操作后 执行一次,不管这条语句影响了多少行。针对的是表。
2、行级触发器:触发语句作用的 每一条记录都被触发。在行级触发器中使用:old和:new伪记录变量,识别值得状态。针对的是行。
[FOR EACH ROW[WHEN(条件),就是行级触发器,否则就是语句级触发器。
 
五 第一个触发器
1、需求
每当插入新员工后,自动打印“成功插入新员工”。
2、代码
  1. create or replace trigger saynewemp
  2. after insert
  3. on emp
  4. declare
  5. begin
  6. dbms_output.put_line('成功插入新员工');
  7. end;
3、验证
SQL> set serveroutput on
SQL> insert into emp(empno,ename,sal,deptno) values(1002,'Tome','3000',10);
成功插入新员工
 

猜你喜欢

转载自cakin24.iteye.com/blog/2390333