oracle触发器详解

原创 2012年03月22日 13:26:05
l数据库触发器是一个与表相关联的、存储的PL/SQL程序。每当一个特定的数据操作语句(Insert,update,delete)在指定的表上发出时,Oracle自动地执行触发器中定义的语句序列。
l
l触发器的类型
语句级触发器
在指定的操作语句操作之前或之后执行一次,不管这条语句影响了多少行。
行级触发器(FOREACH ROW
触发语句作用的每一条记录都被触发。在行级触发器中使用oldnew伪记录变量, 识别值的状态。

   CREATE  [or REPLACE] TRIGGER  触发器名

   {BEFORE | AFTER}

   {DELETE | INSERT | UPDATE [OF列名]}

   ON  表名

   [FOR EACH ROW [WHEN(条件) ] ]

   PLSQL

限制非工作时间向数据库插入数据

create or replace
trigger insertEmp
before insert on emp
declare
begin
 if  to_char(sysdate,'day') in ('星期六') or to_number(to_char(sysdate,'hh24')) between 18 and 24
   then
       raise_application_error(-20001,'非工作日');
  end if;
end;


确认数据(检查emp表中sal的修改值不低于原值)

create or replace trigger updateemp
  before update on emp  
  for each row
declare
  -- local variables here
begin
  if:new.sal<:old.sal then
    raise_application_error(-20001,'更改的值不能小于眼有的值');
    end if;
end updateemp;



Oracle创建触发器详解及例子

触发器详解 1。触发器与触发该触发器的SQL语句同属于一个事务,触发器不允许发出任何事务控制语句,如 commit、rollback、savepoint或者set transaction,它只能随着...
  • qq_26676207
  • qq_26676207
  • 2016年07月01日 15:52
  • 6441

Oracle触发器及使用举例(几种触发器类型)

Oracle触发器及使用举例(几种触发器类型)
  • u013882957
  • u013882957
  • 2017年05月06日 22:28
  • 1390

Oracle触发器用法实例详解

oracle
  • shmilychan
  • shmilychan
  • 2016年12月21日 17:32
  • 3555

如何获取Oracle数据库中某表及索引、约束、触发器、对象权限的创

在上一篇文章中,我们知道了如何获取Oracle数据库中某个用户下的所有表、索引、约束、触发器的创建脚本?那么对于数据库中特定的某张表而言,又该如何获取建表语句、及索引、约束、外键约束、触发器、对象权限...
  • u013260637
  • u013260637
  • 2014年06月25日 02:09
  • 558

oracle的触发器增删改实例

原文链接:http://www.2cto.com/database/201309/241734.html oracle的触发器增删改实例   ----------对一张表增删改的触发...
  • jarniyy
  • jarniyy
  • 2016年04月06日 15:39
  • 1260

oracle触发器的启用和停用

1、禁用 table_name 表的所有 trigger   ? 1 alter table table_name disable...
  • LanSeTianKong12
  • LanSeTianKong12
  • 2017年08月23日 16:03
  • 316

oracle创建视图触发器

1.视图触发器语法 2.视图触发器作用 3.视图触发器实例
  • baidu_37107022
  • baidu_37107022
  • 2017年07月08日 00:01
  • 673

Oracle启用和禁用触发器

1、禁用table_name表的所有trigger alter table table_name disable all triggers; 2、启用table_name表的所有trigger al...
  • itmyhome
  • itmyhome
  • 2015年08月04日 22:16
  • 2676

oracle 触发器与事务

(1)如果外部事务撤销,触发器形成的变更是否会撤销?如果触发器操作失败,是否会导致外部SQL失败,从而导致事务撤销(2) 事务回滚时,触发器形成的变更是否会撤销;(3) 触发器失败时,外部SQL是否会...
  • sunitjy
  • sunitjy
  • 2010年07月22日 20:49
  • 3480

oracle 触发器:条件判断自动执行某些任务,不仅仅用于自增id

实现功能:当某张表写入数据时,同时将处理后的数据写入另一张表 create or replace trigger TG_sale_warehousein_gh after insert ...
  • cctvcqupt
  • cctvcqupt
  • 2015年01月23日 11:29
  • 540
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:oracle触发器详解
举报原因:
原因补充:

(最多只允许输入30个字)