为了账号安全,请及时绑定邮箱和手机立即绑定

Oracle触发器

  • 触发器之数据确认:

    https://img1.sycdn.imooc.com//5beb8ef40001b9b809590413.jpg

    查看全部
  • 实施复杂的安全检查:

    https://img1.sycdn.imooc.com//5beb8be90001e5ea07430445.jpg

    查看全部
  • 触发器详解:

    https://img1.sycdn.imooc.com//5beb89430001a97809960585.jpg

    查看全部
  • 创建触发器:

    https://img1.sycdn.imooc.com//5beb882e0001bfe307770702.jpg

    查看全部
  • 数据库触发器是一个与表相关联的、存储的PL/SQL程序。每当一个特定的数据操作语句(insert、update、delete)在指定的表上发出时,Oracle自动地执行触发器中定义的语句序列。也就是说select语句是没有触发器的!

    create trigger saynewemp

    after insert

    on emp

    declare

    begin

        dbms_output.put_line('成功插入新员工');

    end;

    /

    查看全部
  • 触发器是一个特殊的存储过程,存储过程和存储函数是完成特定功能的一个PL/SQL程序,触发器也是一个PL/SQL程序。

    触发器的应用场景:

    1. 复杂的安全性检查

    2. 数据确认

    3. 实现审计功能

    4. 完成数据的备份和同步

    Oracle中的触发器类型:语句级触发器和行级触发器

    查看全部
  • 1、语句级触发器:针对表

        --在指定的操作语句操作之前或之后执行一次,不管这条语句影响了多少行

    2、行级触发器:针对行

        --触发语句作用的每一条记录都被触发。在行级触发器中使用:old和:new伪记录变量,识别值得状态。

    查看全部
  • 1、select没有触发器

    2、与表关联,由表触发(insert,update,delete)

    3、触发器--trigger

    3、语法:create or replace trigger 【name】

                     after insert

                    on tablename

                        declare

                            begin

                              end

                    /

    查看全部
  • 一、触发器应用场景

        1、复杂的安全性检查

        2、数据确认

        3、实现审计功能

        4、完成数据的备份和同步

    二、触发器的语法

        --PLSQL语句

    三、触发器类型

        --语句级触发器和行级触发器


    查看全部
  • before   操作之前

    after   操作之后

    ----------------------

    delete   删除操作

    insert    插入操作

    update   更新操作

    ---------------------


    查看全部
  • 数据库备份

    查看全部
  • <h5>触发器应用场景三: 数据的审计</h5><p><strong>基于值</strong>得审计功能</p><p>例子:给员工涨工资,当涨后的薪水超过6000块时候,审计该员工的信息</p><p> 创建表,用于保存审计信息</p><p>create table audit_info( information varchar2(200) );</p><p> create or replace trigger do_audit_emp_salary</p><p>after update on emp for each row</p><p>begin if :new.sal&gt;6000 then</p><p> insert into audit_info values(:new.empno||' '||:new.ename||' '||:new.sal);</p><p> end if;</p><p> end;</p><p>/</p><p><br /></p>
    查看全部
  • 认识::new 和:old区别 与行级触发器

    涨工资不能越涨越少

    :old 表示操作该行之前这一行的值

    :new 表示操作该行之后这一行的值

    create or replace trigger check_salary

    before update on emp for each row

    begin

    if :new.sal<:odl.sal then

     raise_application_error(-20002,'涨后薪水不能少于涨前薪水。 涨后薪水为:'||:new.sal ||'涨前的薪水:'||:old.sal);

    end if;

     end;

    /


    查看全部
  • 触发器案例一:复杂的安全性检查

    1,禁止在非工作时间插入数据

    --禁止在非工作时间插入新员工

    select sysdate from dual; --SYSDATE

    select to_char(sysdate,'day') from dual;--查看系统时间是星期几

    1,  周末:to_char(sysdate,"day")in('周六','周日')

    2,  上班前,下班后 to_number(tochar(sysdate,'hh24'))not between 9 and 18 select to_char(sysdate,'hh24') from dual;

    select to_number(to_char(sysdate,'hh24'))from dual;


    查看全部
  • 1、创建触发器的语句块


    2.触发器的两种类型  

    语句级触发器:不管这条语句影响多少行,只执行一次(针对表)  

    行级触发器:每影响一行,都被触发一次。行级触发器中使用:old :new伪记录变量(针对行)

    查看全部

举报

0/150
提交
取消
课程须知
学习本门课程前,需要掌握PL/SQL语法。对PL/SQL语法不了解的小伙伴请移步课程《Oracle数据库开发必备利器之PL/SQL基础》。
老师告诉你能学到什么?
1、掌握触发器的概念和语法 2、通过案例的学习,能够独立编写触发器

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!