游标

发表时间:2017-05-11 16:56:46 浏览量( 36 ) 留言数( 0 )

学习目标:

1、了解Java的历史

2、为什么要学习Java语言

3、端正学习态度


学习过程:

游标是什么?游标字面理解就是游动的光标。用数据库语言游标是映射在结果集中一行数据上的位置实体,有了游标,用户就可以访问结果集中的任意一行数据了,将游标放置到某行后,即可对该行数据进行操作,例如提取当前行的数据等来描述:

在PL/SQL中使用DML语句时自动创建隐式游标,隐式游标自动声明、打开、抓取和关闭。通过检查隐式游标的属性可以获得最近执行的DML。游标的属性有:

  • %FOUND – SQL 语句影响了一行或多行时为 TRUE

  • %NOTFOUND – SQL 语句没有影响任何行时为TRUE

  • %ROWCOUNT – SQL 语句影响的行数

  • %ISOPEN  - 游标是否打开,始终为FALSE

显式游标在 PL/SQL 块的声明部分定义查询,该查询可以返回多行,显式游标的操作过程如下: 

attcontent/c89eb941-f997-4ec0-93a7-92d339f277ff.png

循环游标用于简化游标处理代码,当用户需要从游标中提取所有记录时使用:

示例如下:

--游标
declare
   --1、声明一个游标   cursor 游标名称  is  指向查询语句
   cursor my_cursor is  select * from goods;
   my_row my_cursor%rowtype;
begin
   --2、打开游标
   open my_cursor;
   --3、捉取数据
   loop
      fetch my_cursor into my_row;
      exit when my_cursor%notfound;
      --处理数据
      dbms_output.put_line('goodname='||my_row.goods_name||',cash='||my_row.cash);
   end  loop;
   --4、关闭游标
   close my_cursor;
   exception
      when others then 
        if my_cursor%isopen then
           close my_cursor;
        end if;
end;