始创于2000年 股票代码:831685
咨询热线:0371-60135900 注册有礼 登录
  • 挂牌上市企业
  • 60秒人工响应
  • 99.99%连通率
  • 7*24h人工
  • 故障100倍补偿
您的位置: 网站首页 > 帮助中心>文章内容

Oracle 触发器笔记

发布时间:  2012/9/4 17:40:04

create or replace trigger emp
--before 表示对操作前的触发器
-- after 表示对操作后的触发器

--每张表最多可建立12个触发器
--before inset
--before insert for each row
--after insert
--after insert for each row-
 


--before uPdate
--before uPdate for each row
--after uPdate
--after uPdate for each row

--before uPdate
--before uPdate for each row
--after uPdate
--after uPdate for each row

--执行的顺序是:#1. 执行before语句级的触发器,对于受语句影响的每一行:
-- #2. 执行级触发器,执行DML语句
--执行after行级的触发器
--#3. 执行 after语句级的触发器

  before delete on aaa  --删除操作前aaa表的触发器
 
  for each row --对表的每一行触发器执行一次。如果没有这一选项,则只对整个表执行一次。
declare

begin

     /*如果插入的任然是aaa表的话,会出现:第 1 行出现错误:
ORA-04091: 表 QUERY.AAA 发生了变化, 触发器/函数不能读它
ORA-06512: 在 "QUERY.EMP", line 4 (QUERY表示user,line表示行数,EMP表示触发器名称)
ORA-04088: 触发器 'QUERY.EMP' 执行过程中出错*/

  /*将修改前的数据插入到日志表aaa_tmp里去,以供监督使用*/
  insert into aaa_tmp(AID,ANAME,PRICE)
 
  values(:old.AID,:old.ANAME,:old.PRICE);--:old表示原来的数据,
                                         --:new表示插入的新数据                                  
end emp;


 


本文出自:亿恩科技【www.enkj.com】

服务器租用/服务器托管中国五强!虚拟主机域名注册顶级提供商!15年品质保障!--亿恩科技[ENKJ.COM]

  • 您可能在找
  • 亿恩北京公司:
  • 经营性ICP/ISP证:京B2-20150015
  • 亿恩郑州公司:
  • 经营性ICP/ISP/IDC证:豫B1.B2-20060070
  • 亿恩南昌公司:
  • 经营性ICP/ISP证:赣B2-20080012
  • 服务器/云主机 24小时售后服务电话:0371-60135900
  • 虚拟主机/智能建站 24小时售后服务电话:0371-60135900
  • 专注服务器托管17年
    扫扫关注-微信公众号
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 亿恩科技 版权所有  地址:郑州市高新区翠竹街1号总部企业基地亿恩大厦  法律顾问:河南亚太人律师事务所郝建锋、杜慧月律师   京公网安备41019702002023号
      1
     
     
     
     

    0371-60135900
    7*24小时客服服务热线