Oracle的存储过程编程 第九讲:隐式游标的使用

例1:



 

-----------------------------------------------------------------------------------------------------------------

declare

begin

   for emp_record in(select * from emp)

     loop

       dbms_output.put_line('姓名:'||emp_record.ename||'    部门编号:'||emp_record.ename);

     end loop;

  

end;

-------------------------------------------------------------------------------------------------------------------

例2:

------------------------------------------------------------------------------------------------------------------------- 

declare

begin

   update emp set sal=sal*(1+0.2) where job='SALESMAN';

   if sql%notfound then --如果update语句没有影响到任何一行数据,则执行

      dbms_output.put_line('没有雇员需要上调工资');

   else--如果update语句至少影响到一行数据,则执行

      dbms_output.put_line('有'||sql%rowcount||'个雇员工资上调20%');

  end if;

  

end;

------------------------------------------------------------------------------------------------------------------------- 

在PL/SQL块中执行SELECTINSERTDELETEUPDATE语句时,Oracle会在内存中为其分配上下文区(Context Area),即缓冲区。游标是指向该区的一个指针,或是命名一个工作区(Work Area),或是一种结构化数据类型。

猜你喜欢

转载自762612388.iteye.com/blog/2332411