set serveroutput on
/*
* 显示10号部门中的总员工数, 和每个员工的姓名和工资信息。
*/
declare
-- 光标
cursor c_emp(dno number) is select ename, sal from emp where deptno=dno;
vname emp.ename%type;
vsal emp.sal%type;
vcount number;
vdeptno dept.deptno%type; -- 用于保存接收到的部门编号信息
begin
-- 得到查询的条件
vdeptno := &input_deptno;
-- 显示部门中的总员工数
select count(*) into vcount from emp where deptno=vdeptno;
dbms_output.put_line( '总人数为: ' || vcount );
-- 显示每一个员工的姓名与工资信息
open c_emp(vdeptno);
loop
fetch c_emp into vname, vsal;
exit when c_emp%notfound;
dbms_output.put_line( ' ' || vname || ' 的工资为: ' || vsal );
end loop;
close c_emp;
end;
/
PL/SQL带参数的光标
最新推荐文章于 2021-04-08 11:00:16 发布