zoukankan      html  css  js  c++  java
  • oracle存储过程

    create or replace procedure Proc_Update_StaffInfo
    is
      temp number;
      cursor cur_staff is select * from HR_RS_Staff where Deleted = 0 and sysdate > EntryTime + 365;
    begin
        for u in cur_staff
          loop
            temp :=  mod(floor(sysdate - to_date(u.EntryTime,'yyyy-MM-dd')),365);

            if temp <> 0 then
              -- 员工企龄
              update HR_RS_Staff set EnterprisesAge = EnterprisesAge + 1 where ID = u.ID;
             
              -- 员工年假信息
              select count(*) into temp from HR_KQ_StaffAnnualLeave where ID = u.ID;
              if temp = 0 then
                insert into HR_KQ_StaffAnnualLeave(ID, Staffid, Numberofdays, Deleted, Createtime, Modifytime)values(u.ID, u.ID, 5, 0, sysdate, sysdate);
              else
                update HR_KQ_StaffAnnualLeave set Numberofdays = 40 where ID = u.ID;
              end if;
            end if;
          end loop;
    end;

  • 相关阅读:
    Java中Vector和ArrayList的区别
    Java深拷贝与浅拷贝
    Java基础数据类型转换
    Java中的break Label 和continue Label
    java中关于Integer 和java 中方法参数传递
    网络虚拟化
    备份工具
    mysql文件理解
    mysql分区介绍
    进程间通信
  • 原文地址:https://www.cnblogs.com/aaa6818162/p/2938322.html
Copyright © 2011-2022 走看看