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;

  • 相关阅读:
    学习:ASP.NET中App_Code,App_Data等文件夹的作用(转)
    总结:CLR Via C#(第九章):属性与索引器
    总结:CLR Via C#(第八章):其他(方法传递、out、ref)
    Init Version
    Code 128 Barcode Font Advantage Package 的常见问题
    Skelta Workflow.NET 2004 R2
    GTP.NET 甘特图项目管理控件
    Code 128 Barcode Font Advantage Package 中如何手动加入起始符,结束符,校验符
    VectorDraw Professional v5.1.1.1043
    开篇
  • 原文地址:https://www.cnblogs.com/alang85/p/2140774.html
Copyright © 2011-2022 走看看