实验: 子程序和包
实验目的
(1)掌握函数和子程序的创建和使用。
(2)掌握带参数的子程序的使用。
(3)掌握包的创建和使用。
实验内容
1、编写一个包emp_package,用来对emp表进行操作。其中应包含以上几个功能:
(1)编写一个不带参数的过程dept_pro,功能是输出每个部门名称和部门人数,建议使用游标。
SQL> ed
已写入file afiedt.buf
1 create procedure emp_pro
2 is
3 CURSOR dept_cur IS select dname,count(empno)人数from emp,dept
4 where emp.deptno=dept.deptno group by dname;
5 begin
6 for v_dept in dept_cur loop
7 dbms_output.put_line(v_dept.dname||' '||v_dept.人数);
8 end loop;
9* end;
SQL> /
过程已创建。
(2)输入职工编号,得到职工姓名的存储过程或函数emp_pro或emp_fun
CREATE OR REPLACE PROCEDURE emp_pro
(
p_name OUT emp.ename%type,
p_sal OUT emp.sal%type,
p_eno IN emp.empno%type
)