当前位置:Gxlcms > 数据库问题 > PL/SQL&存储过程||存储函数&触发器

PL/SQL&存储过程||存储函数&触发器

时间:2021-07-01 10:21:17 帮助过:26人阅读

实施复杂的安全性检查 禁止在非工作时间插入新员工 非工作时间: 1. 周末: to_char(sysdate,‘day‘) in (‘星期六‘,‘星期日‘) 2. 上班前 下班后:to_number(to_char(sysdate,‘hh24‘)) not betweeen 9 and 18 */ create or replace trigger securityemp before insert on emp begin if to_char(sysdate,day) in (星期六,星期日) or to_number(to_char(sysdate,hh24)) not between 9 and 18 then --抛出错误 raise_application_error(-20001,禁止在非工作时间插入新员工); end if; end; /
  1. <span style="color: #008080;">--</span><span style="color: #008080;">涨后的工资不能少于涨前的工资</span>
  2. <span style="color: #0000ff;">create</span> <span style="color: #808080;">or</span> <span style="color: #ff00ff;">replace</span> <span style="color: #0000ff;">trigger</span><span style="color: #000000;"> checksal
  3. before </span><span style="color: #0000ff;">update</span>
  4. <span style="color: #0000ff;">on</span><span style="color: #000000;"> emp
  5. </span><span style="color: #0000ff;">for</span><span style="color: #000000;"> each row
  6. </span><span style="color: #0000ff;">begin</span>
  7. <span style="color: #008080;">--</span><span style="color: #008080;">if 涨后的薪水 < 涨前的薪水 then </span>
  8. <span style="color: #0000ff;">if</span> :new.sal <span style="color: #808080;"><</span> :old.sal <span style="color: #0000ff;">then</span><span style="color: #000000;">
  9. raise_application_error(</span><span style="color: #808080;">-</span><span style="color: #800000; font-weight: bold;">20002</span>,<span style="color: #ff0000;">‘</span><span style="color: #ff0000;">涨后的工资不能少于涨前的工资.涨后:</span><span style="color: #ff0000;">‘</span><span style="color: #808080;">||</span>:new.sal<span style="color: #808080;">||</span><span style="color: #ff0000;">‘</span><span style="color: #ff0000;"> 涨前:</span><span style="color: #ff0000;">‘</span><span style="color: #808080;">||</span><span style="color: #000000;">:old.sal);
  10. </span><span style="color: #0000ff;">end</span> <span style="color: #0000ff;">if</span><span style="color: #000000;">;
  11. </span><span style="color: #0000ff;">end</span><span style="color: #000000;">;
  12. </span><span style="color: #808080;">/</span>

 

PL/SQL&存储过程||存储函数&触发器

标签:

人气教程排行