zoukankan      html  css  js  c++  java
  • day70-oracle 12-触发器

    查询是没有触发器的。trigger是一个数据库的对象。PL/SQL程序是在我插入之前执行还是在插入之后执行?触发器类似于java中的监听器。

    监听插入操作,执行一段PLSQL程序。

    禁止在非工作时间插入数据,这就是复杂的安全性检查。

    可以用触发器做审计:国家审计局每年做什么事情?就是看你这个单位有什么不好的事情。偷税漏税,账目是不是对的,有没有行贿受贿。它怎么知道你有没有这种事?查你的账。你的账本相当于是一个日志,审计就是做日志。审计功能是非常重要的,比如说在银行里面,银行里面数据库的审计功能必须打开,你在数据库上做的任何操作都是被记录下来的。既然是被记录下来的,就能够查得到。现在还没有技术可以关闭数据库的审计功能。oralce的审计做的非常非常的强大,可以用触发器来实现,但是oracle单独实现了审计功能。oracle的高级功能就单独有讲数据库的审计。你的所有操作都是可以被记录的。

    数据的备份和同步。有两个数据库,一个是主数据库,一个是从数据库(备份数据库)。在主数据库上把数据改了以后,新的数据直接拷贝到备份数据库上,这样两个数据库才是一样的。物理上不在一起,但是逻辑上可以把它看做整体,那叫做分布式数据库。分布式数据库是用触发器实现数据的备份和同步。

    语句级的触发器针对的是表,行级触发器针对的是行。

    语句级的触发器,实施复杂的安全性检查。

    :old和:new代表的是同一行记录。:old表示的是操作这一行之前这一行的值,:new表示操作这一行之后这一行的值。它们代表的是同一条记录。

  • 相关阅读:
    openwrt的内核版本是在哪个文件中指定的?
    git如何将一个分支合并到另一个分支?
    cygwin如何下编译安装tmux?
    如何合并ts文件?
    在cygwin下创建的文件位于windows的哪个目录下?
    linux shell的for循环语法是怎样的?
    内部类访问局部变量时,为什么需要加final关键字
    Java8函数式编程的宏观总结
    Maven私服使用经验总结
    java关于Integer设置-128到127的静态缓存
  • 原文地址:https://www.cnblogs.com/ZHONGZHENHUA/p/6665443.html
Copyright © 2011-2022 走看看