触发器是一种特殊的过程,但是用户不能直接调用触发器。触发器是特定事件出现时自动执行的代码块
触发器示例
create or replace trigger biufer_emp_empno --触发器名称 before insert or update --触发语句 of empno on emp --on 目标表 referencing old as old_value new as new_value for each row when(new value.empno<>7782) --触发器限制 begin :new_value.comm:=0; --触发操作 end; /
触发器名称中应该包含触发器执行时间、执行的操作、涉及的表或列
如:
biufer --> before insert or update for each row
emp代表emp表,empno代表empno列,这可以指出触发器会涉及哪个列的值
语句触发器
1、用户可能需要在表上进行安全检查的insert、update或delete语句触发器,以便根据用户的具体业务规则验证正在进行操作的用户是否具有指定的权限
CREATE TABLE FOO(a number); create or replace trigger biud_foo_a before insert or update or delete on foo begin if user not in ('jack','Clinton') then raise_application_error(-20001,'你没有修改此表的权限') end if; end; /
如果用户不是...没有权限修改
在emp_copy表上创建一个触发器,当对emp_copy表执行插入、删除或更新操作是,该触发器将会填充emp_copy_log
create or replace trigger biufer_emp_copy before insert or update or delete on emp_copy begin insert into emp_copy_log values(user,sysdate); end; /
然后测试该触发器。修改emp_copy
create table emp_copy_log( who varchar2(30), when date) /
行触发器 http://swordshadow.iteye.com/admin/blogs/1966002
instead of 触发器
instead of触发器是Oracle系统用来替换所使用的实际语句而执行的触发器,与导致触发器激活的语句执行之前或执行之后的语句触发器和行触发器不同
示例:首先在emp表上创建emp_job视图
create or replace view emp_job as select empno, ename, job from emp;
接着在emp_job视图上创建一个触发器。使得对emp_job视图的数据更新转变为对emp表的数据更新
create or replace trigger update_emp_job_view instead of update on emp_job begin update emp set empno = :new.empno, ename = :new.ename, job = :new.job where empno = :old.empno
在触发器的主体有一个对表emp的update关键字。由于emp_job视图是建立在emp表上的视图,如果更新这个视图,实际上就是更新该图的基本表
删除触发器:
ALTER TRIGGER 名称 DISABLE; drop trigger 名称;
其他资料参考:
两个经典的Oracle触发器示例
相关推荐
oracle数据库触发器实例 oracle数据库触发器实例 oracle数据库触发器实例 oracle数据库触发器实例 oracle数据库触发器实例 oracle数据库触发器实例 oracle数据库触发器实例 oracle数据库触发器实例
一个关于oracle基本讲解。
Oracle触发器与存储过程 实例,使用 高级编程 存储过程 触发器 E-MAIL 及错误处理。 共4个部分.
很详细的oracle创建触发器的例子
收入一些ORACLE触发器的实例,供大家参考。希望有帮助
摘要:本文介绍了oracle触发器的概念和类型,总结了oracle触发器在开发MIS中的应用,并提供了实例以供参考. 关键词:MIS 、触发器 oracle 1.引言 本人在做一个大型的MIS系统(前台用powerbuild工具,后台用oracle...
2,触发器示例 2 3,触发器语法和功能 3 4,例一:行级触发器之一 4 5,例二:行级触发器之二 4 6,例三:INSTEAD OF触发器 6 7,例四:语句级触发器之一 8 8,例五:语句级触发器之二 9 9,例六:用包封装...
对某些oralce触发器实例的讲解和列子
oracle触发器实例讲解2008-11-27 09:17--[6]// Oracle Trigger ---------------------------------------------------------------------------------------------// --实例1------------------------ --创建触发器...
这是个pdf格式的文件,主要描述了Oracle 触发器语法及实例基础知识。希望能够给大家带来帮助(*^__^*)
本文是触发器的概念,语法,实例 进行剖析
主要介绍了Oracle触发器用法,结合实例形式详细分析了Oracle触发器的概念,功能,语法及相关使用技巧,需要的朋友可以参考下
Oracle触发器,用于选单后修改选单的表的触发动作。接下来通过本文给大家分享Oracle触发器实例代码,需要的的朋友参考下吧
对oracle触发器和存储过程讲解的很详细,里面的实例也是非常有代表性,值得一看
Oracle存储过程和触发器实例
数据库触发器在数据库开发、MIS开发上有很广泛的应用,但经验表明,使用过多的触发器将降低整个数据库的性能。... 本文介绍了oracle触发器的概念和类型,总结了oracle触发器在开发MIS中的应用,并提供了实例以供参考。
在ORACLE系统里,触发器类似过程和函数,都有声明,执行和异常处理过程的PL/SQL块。 触发器类型 触发器在数据库里以独立的对象存储,它与存储过程和函数不同的是,存储过程与函数需要用户显示调用才执行,而触发器是...
介绍了oracle存储过程的实现、存储过程的调用和触发器语法及实例的基础知识
oracle应用经典实例,oracle操作,存储过程,游标,触发器,oracle帮助文档,oracleAPI