Oracle數(shù)據(jù)庫包的構造過程實例
作者:痞子過 
  本文我們主要介紹了Oracle數(shù)據(jù)庫包的構造過程實例,并給出了詳細的代碼,希望能夠對您有所幫助。
 Oracle數(shù)據(jù)庫包的構造過程是沒有任何名稱的,它是在實現(xiàn)了包的其他過程之后,以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, '該雇員已經(jīng)存在');
 - 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;
 
3.構造過程
- begin
 - select min(sal), max(sal) into minsal, maxsal from emp;
 - end;
 
關于Oracle數(shù)據(jù)庫包的構造過程實例的知識就介紹到這里了,希望本次的介紹能夠對您有所收獲!
【編輯推薦】
責任編輯:趙鵬 
                    來源:
                    博客園
 














 
 
 
 
 
 
 