java怎么得到oracle的游标_oracle游标的简单学习

/*游标的简单学习*/

一.概念:

1.游标:游标是用于在存储过程中迭代SELECT查询出的数据。

2.什么是游标?

①游标(cursor)是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果。

每个游标区都有一个名字。用户可以用SQL语句逐一从游标中获取记录,并赋给主变量,交由主语言进一步处理。

3.游标有什么作用?

①指定结果集中特定行的位置。

②基于当前的结果集位置检索一行或连续的几行。

③在结果集的当前位置修改行中的数据。

④对其他用户所做的数据更改定义不同的敏感性级别。

⑤可以以编程的方式访问数据库。

4.为什么避免使用游标?

①在创建游标时,最需要考虑的事情是,“是否有办法避免使用游标?”

因为游标的效率较差,如果游标操作的数据超过1万行,那么就应该改写;

如果使用了游标,就要尽量避免在游标循环中再进行表连接的操作。.

5.Oracle游标的类型?

①静态游标:结果集已经确定(静态定义)的游标。分为隐式和显示游标。

⑴隐式游标:所有DML语句为隐式游标,通过隐式游标属性可以获取SQL语句信息。

⑵显示游标:用户显示声明的游标,即指定结果集。当查询返回结果超过一行时,就需要一个显式游标。

②REF游标:动态关联结果集的临时对象。

6. Oracle游标的状态有哪些,怎么使用游标属性?

①游标的状态是通过属性来表示。

%Found :Fetch语句(获取记录)执行情况True or False。

%NotFound : 最后一条记录是否提取出True or False。

%ISOpen : 游标是否打开True or False。

%RowCount :游标当前提取的行数 。

说明:

在打开一个游标之后,马上检查它的%found或%notfound属性,

它得到的结果即不是true也不是false.而是null.

必须执行一条fetch语句后,这些属性才有值。

②使用游标的属性。

eg1.

begin

update emp set sal = sal + 0.1 where job = 'CLERK';

if SQL%Found then

dbms_output.put_line('update success');

else

dbms_output.put_line('update failed');

end if;

end;

7.如何使用游标,如何遍历游标?

①使用显示游标

⑴声明游标:划分存储区域,注意此时并没有执行Select 语句。

CURSOR 游标

你可能感兴趣的:(java怎么得到oracle的游标_oracle游标的简单学习)