zoukankan      html  css  js  c++  java
  • oracle构造过程实例

      包的构造过程是没有任何名称的,它是在实现了包的其他过程之后,以begin开始,以end结束的部分。

    1,包头

    create or replace package pkg_emp is
      minsal number(6, 2);
      maxsal number(6, 2);
      procedure add_employee(eno    number,
                             name   varchar2,
                             salary number,
                             dno    number);
      procedure upd_sal(eno number, salary number);
      procedure upd_sal(name varchar2, salary number);
    end pkg_emp;

    2,包体

    create or replace package body pkg_emp is

      procedure add_employee(eno    number,
                             name   varchar2,
                             salary number,
                             dno    number) is
      begin
        if salary between minsal and maxsal then
          insert into emp
            (empno, ename, sal, deptno)
          values
            (eno, name, salary, dno);
        else
          raise_application_error(-20001, '工资不在范围内');
        end if;
      exception
        when dup_val_on_index then
          raise_application_error(-20002, '该雇员已经存在');
      end;

      procedure upd_sal(eno number, salary number) is
      begin
        if salary between minsal and maxsal then
          update emp set sal = salary where empno = eno;
          if sql%notfound then
            raise_application_error(-20003, '不存在该雇员号');
          end if;
        else
          raise_application_error(-20001, '工资不在范围内');
        end if;
      end;

      procedure upd_sal(name varchar2, salary number) is
      begin
        if salary between minsal and maxsal then
          update emp set sal = salary where upper(ename) = upper(name);
          if sql%notfound then
            raise_application_error(-20004, '不存在该雇员号');
          end if;
        else
          raise_application_error(-20001, '工资不在范围内');
        end if;
      end;
     
    --构造过程
    begin
      select min(sal), max(sal) into minsal, maxsal from emp;
    end;

  • 相关阅读:
    Java数据处理,Map中数据转double并取小数点后两位
    19年7月份面试7家公司,整理的java面试题(答案自行百度解决,也是个学习的过程)
    2019阿里云面试题,竟然现场敲代码,现在的企业越来越实在了
    解决win10状态栏的搜索框无法搜索本地应用或无反应
    sql,按照时间排序,取前N条
    List数组排序
    阿里云的maven仓库 地址
    hashcode相等两个类一定相等吗?equals呢?相反呢?
    杂记
    java排序
  • 原文地址:https://www.cnblogs.com/alang85/p/2140774.html
Copyright © 2011-2022 走看看