--查询并打印员工的姓名和薪水
--set serveroutput on
/*
1、光标的属性
      %found:假设取到了记录就是true否则是false;
      %notfound:
*/
declare
--定义一个光标
cursor cemp is select ename,sal from emp;
--为光标定义相应的变量
pename emp.ename%type;
psal emp.sal%type;

begin
     --打开光标
     open cemp;
     
     loop
          --取一条记录  into后面的顺序和定义光标后面的ename,sal顺序一致
          fetch cemp into pename,psal;
          --思考:1、循环什么时候退出?2、fetch不一定能取到记录
          --exit when 没有取记录
          exit when cemp%notfound;
          
          --打印取到的记录
          dbms_output.put_line(pename||'的薪水是'||psal);
     
     end loop;
     
     --关闭光标
     close cemp;
end;
/

posted on 2017-08-02 19:51  lxjshuju  阅读(351)  评论(0编辑  收藏  举报