ORACLE触发器学习
来源:互联网 发布:logstash apache日志 编辑:程序博客网 时间:2024/05/18 19:21
第一节:触发器简介
具备某些条件,由数据库自动执行的一些 DML 操作行为。
第二节:语句触发器
语句触发器针对整个表,作用整个表操作; 语法结构: Create trigger 触发器名称 Before/after 触发动作 On
作用对象 触发器谓词:INSERTING、UPDATING、DELETING
创建触发器并使用:
create trigger tr_book//创建触发器before insert//在执行insert前触发on t_book//在哪个表触发begin if user!= 'cc' then raise_application_error(-20001,'权限不足'); end if; end;
语句执行效果:
SQL> create trigger tr_book 2 before insert 3 on t_book 4 begin 5 if user!= 'cc' then 6 raise_application_error(-20001,'权限不足'); 7 end if; 8 end; 9 /
//创建完成后,去t_book表中插入数据时,如果不是cc用户下会报“ora20001权限不足”错误后面的操作也是根据对t_book表进行操作而触发某动作
触发器谓词的使用
当对某张表进行DML操作时,将在日志表中记录操作信息:create trigger tr_book_logbefore insert or update or deleteon t_bookbegin if updating then insert into t_book_log values(user,'update',sysdate); else if inserting then insert into t_book_log values(user,'insert',sysdate); else if deleting then insert into t_book_log values(user,'delete',sysdate); end if; end if; end if;end;
第三节:行触发器
行触发器针对行记录。
语法结构: Create trigger
触发器名称 Before/after
触发动作 For each row
On 作用对象 触发器内置变量 :old :new
行触发器例子:
create trigger tr_book_addafter inserton t_bookfor each rowbegin update t_booktype set num=num+1 where id=:new.typeId;end;
第四节:触发器禁用和开启
禁用触发器: alter trigger 触发器名称 disable
启用触发器: alter trigger 触发器名称 enable
alter trigger tr_book_add disable;
阅读全文
0 0
- oracle触发器学习
- Oracle 学习笔记 触发器
- oracle 触发器学习笔记
- Oracle触发器学习
- Oracle触发器学习笔记
- Oracle 触发器学习
- oracle触发器学习(一)
- oracle触发器学习
- oracle 触发器 学习笔记
- oracle数据库触发器学习
- oracle触发器学习
- oracle触发器学习
- oracle触发器学习笔记
- ORACLE触发器学习
- ORACLE触发器学习
- oracle 触发器学习
- oracle 触发器学习
- oracle学习笔记_触发器
- LeetCode
- python-001 第一个Python3.x程序 hello world
- Java性能调优工具(一) Linux命令行工具(top sar vmstat iostat)
- php数组函数整理
- Spring4和Hibernate5整合
- ORACLE触发器学习
- 红外编解码解析
- .html()方法 .text()方法
- VS2013+protobuf-2.5.0 编译源码,嵌入新工程,使用google protobuf数据格式协议
- 贪心算法例题:杭电Saving HDU
- svn上问题解析
- App邀请追踪技术的实现
- Spring MVC中,基于XML配置和基于注解的依赖注入实例
- Cmake