• 存储过程


    ------------------------------------------------存储过程 begin---------------------------------


    27. 定义一个存储过程: 获取给定部门的工资总和(通过 out 参数), 要求, 部门号和工资总额定义为参数

    create or replace procedure sum_sal_procedure(dept_id number, v_sum_sal out number)
           is
           
           cursor sal_cursor is select salary from employees where department_id = dept_id;
    begin
           v_sum_sal := 0;
           
           for c in sal_cursor loop
               --dbms_output.put_line(c.salary);
               v_sum_sal := v_sum_sal + c.salary;
           end loop;       
    
    
           dbms_output.put_line('sum salary: ' || v_sum_sal);
    end;

    28. 自定义一个存储过程完成以下操作: 
    对给定部门(作为输入参数)的员工进行加薪操作, 若其到公司的时间在 ?  -- 95 期间, 为其加薪 %5
                                                                   95 -- 98                %3       
                                                                   98 --  ?                %1
    得到以下返回结果: 为此次加薪公司每月需要额外付出多少成本(定义一个 OUT 型的输出参数).

    create or replace procedure add_sal_procedure(dept_id number, temp out number)
    is
    
    
           cursor sal_cursor is select employee_id id, hire_date hd, salary sal from employees where department_id = dept_id;
           a number(4, 2) := 0;
    begin
           temp := 0;       
    
    
           for c in sal_cursor loop
               a := 0;    
           
               if c.hd < to_date('1995-1-1', 'yyyy-mm-dd') then
                  a := 0.05;
               elsif c.hd < to_date('1998-1-1', 'yyyy-mm-dd') then
                  a := 0.03;
               else
                  a := 0.01;
               end if;
               
               temp := temp + c.sal * a;
               update employees set salary = salary * (1 + a) where employee_id = c.id;
           end loop;       
    end;

    ------------------------------------------------存储过程 end---------------------------------

  • 相关阅读:
    第七次作业
    rfid工作原理
    实验九——基本数据类型存储及应用总结
    实验八——函数定义及调用总结
    实验七——函数定义及调用总结
    作业
    作业
    作业
    开始
    实验12——指针的基础应用2
  • 原文地址:https://www.cnblogs.com/nbkyzms/p/5031429.html
Copyright © 2020-2023  润新知