一、触发器

有点类似AOP里的拦截器,触发器不能传递参数,也不能输出参数,也不能显式调用,只有当满足触发器条件的时候Oracle会自动调用。

触发器:

  1、语句级别的触发器:CRUD操作

  2、行级别的触发器

  3、系统级别的触发器:数据库的关闭,启动

  4、用户事件的触发器:进行drop,alter,create时候触发

二、触发器的创建

--创建行级别的触发器
CREATE OR REPLACE trigger trigger_update_product_table
AFTER UPDATE
ON product_table
FOR EACH ROW --每更新一行,就触发一次
BEGIN
--Oracle里面对触发器提供了特殊的对象:NEW :OLD来访问更新前后的数据
DBMS_OUTPUT.put_line('更新后'||:NEW.name);--orcle使用||符号链接字符串而已,相当于java中的+连接字符串
DBMS_OUTPUT.put_line('更新前'||:OLD.name); IF UPDATING THEN END IF; IF INSETING
END;
--创建表级别的触发器
CREATE OR REPLACE trigger trigger_update_product_table
AFTER UPDATE
ON product_table
BEGIN
--表级别触发器里面,不允许使用:NEW :OLD变量
--DBMS.OUTPUT.put_line('更新后:'||:NEW.name);
--DBMS.OUTPUT.put_line('更新前:'||:OLD.name);
END;

最新文章

  1. jsp上传图片实时显示
  2. [整理]S-Record数据格式解析
  3. 安卓奇葩问题之:运行OK,打包安装崩溃(原因是:代码不规范导致编译出错)
  4. run() 和 start() 的区别
  5. Java基本语法
  6. atitit.提升开发效率---mda 软件开发方式的革命
  7. 为VS集成IL环境
  8. N个数全排列的非递归算法
  9. 设计模式:访问者模式(Visitor)
  10. 将EXCEL数据表导入到SQL中
  11. CentOS7-64bit 编译 Hadoop-2.5.0,并分布式安装
  12. FZU 2150 Fire Game(BFS)
  13. 如何设置让外网通过路由器IP加端口号访问到局域网一台Web服务器
  14. poj 2417
  15. ftk学习记录(IME文章)
  16. Linux内存详解
  17. C-LODOP设置同一页面 手机电脑都打印
  18. 用maven和spring搭建ActiveMQ环境
  19. 【转】exec xargs的区别 另附eval命令介绍
  20. org.apache.axis2.AxisFault: org.apache.axis2.databinding.ADBException: Unexpected subelement profile

热门文章

  1. FI CO 常用表
  2. 51nod 1366 贫富差距(flody)
  3. C语言 深入学习
  4. HTML基本内容
  5. 前端开发——HTML学习笔记
  6. Codeforces Round #200 (Div. 1) D. Water Tree 树链剖分+线段树
  7. JaveWeb 公司项目(7)----- 通过JS动态生成DIV
  8. SHA-256 加密原理
  9. SpringBoot的文件上传
  10. numpy广播