显式游标

简介

显示游标使用的是SELECT叙述,被声明于任何一个区块的声明段落中,开发者可以控制几乎所有与游标有关的操作。
显示游标对游标的处理提供了其他类似的游标无法做到的控制。他们要使用一次会传回多余一笔记录的SELECT叙述。
虽然他们提供了比隐式游标更多的控制,但也需要额外的步骤来操作。
使用显示游标,需要进行四个步骤:

1.声明

2.开启

3.从CURSOR中取数据

4.关闭

开启:

游标会在区块的执行或者例外段落中被开启。OPEN命令,准备好游标以供使用。游标中一次只可以有一笔作用中的记录。在开启时,作用中的记录是由游标的查询所传回的第一笔。

取数据:
fetch命令只会在目前记录上操作,并且会一次处理结果集中的一笔记录。

关闭:
一定要、绝对要关闭你的显示游标哦。

忘了关闭游标就等于是有意造成程式码中的记忆体泄漏。在关闭游标前,记忆体不会被释放。
当最后的区块结束时,ORACLE确实会去检查被遗忘的游标,而且它会在最外层区块结束时,自动关闭这些游标,但是,不要依赖这个来关闭你的游标。
写一句“CLOSE cursor_name;”不是很麻烦的事情!

显示游标的基本格式示例

DECLARE

column1 varchar2 (20),

column2 varchar2 (10),

column3 number,

cursor my_cursor is

select column1,column2,column3 from table_1;

BEGIN

open my_cursor;

fetch my_cusor into column1,column2,column3;

while my_cusor % found loop

/*功能语句*/

end loop;

close my_cursor;

END;
/
时间: 2024-10-17 14:33:48

显式游标的相关文章

【PL/SQL练习】显式游标

cursor --------需要用户先定义,在select时,可以用于处理多行记录 1.declare  声明一个游标 2.open cursor (隐式游标自动open) 3.fetch cursor 读取记录到变量(在select时,可以通过循环的方式读取多行记录) 4.判断游标是否为空(到达最后一行记录) 5.close cusor 关闭游标 %isopen  判断游标是否open %found    判断游标是否为非空 %notfound  判断游标是否为空 %rowcount   在

oracle 游标使用(显式游标)

1. Set Serveroutput on; declare Cursor tem_cursor is select * from xuesheng xs; v_row tem_cursor%rowtype; begin open tem_cursor; loop fetch tem_cursor into v_row; exit when tem_cursor%NOTFOUND; dbms_output.put_line(v_row.xing_ming); end loop; close t

Oracle-35-隐式游标&显式游标

一.游标作用(或定义) 1.PL/SQL提供游标机制处理多行记录结果集: 2.游标类似于指针,使应用程序一次可以处理其中的一行记录,比如将游标放入一个for循环中,每循环一次就处理一行记录,那么循环n次就可以处理n行记录: 3.Oracle中,可以分为显式游标和隐式游标两种,比如select*fromstudent就是用隐式游标进行遍历student表,然后将查询结果展示: 4.在平常在进行SELECT查询.DML操作Oracle都会自动创建声明"隐式游标"来处理结果数据: 6.如果需

隐式游标和显式游标

隐式游标的例子

oracle的显式游标

declare   cursor user_cur   is select *    from my_user;   user_row my_user%rowtype;   begin       open user_cur;       loop       fetch user_cur into user_row;       exit when user_cur%notfound;       dbms_output.put_line(user_row.user_id||'----'||u

Oracle PLSQL Demo - 08.定义显式游标[Define CURSOR, Open, Fetch, Close CURSOR]

declare v_empno scott.emp.empno%type; v_sal scott.emp.sal%type; cursor cur_emp is select t.empno, t.sal from scott.emp t; begin open cur_emp; loop fetch cur_emp into v_empno, v_sal; exit when cur_emp%notfound; dbms_output.put_line(v_empno || ' ' || v

Oracle---显式游标

一  游标的分类 在Oracle中提供了两种类型的游标:静态游标和动态游标. 1.静态游标是在编译时知道其SELECT语句的游标.静态游标又分为两种类型,即隐式游标和显式游标. 2.当用户需要为游标使用的查询直到运行的时候才能够确定时,可以使用REF游标(引用游标)和游标变量.使用引用游标必须声明游标变量.引用游标又可以分为两种类型:强类型REF游标和弱类型REF游标. 二  游标的用法 1.显式游标的用法 使用显式游标的4个步骤: 1>声明游标 语法:CURSOR cursor_name [(

oracle的隐式游标

游标的概念:     游标是SQL的一个内存工作区,由系统或用户以变量的形式定义.游标的作用就是用于临时存储从数据库中提取的数据块.在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理,最后将处理结果显示出来或最终写回数据库.这样数据处理的速度才会提高,否则频繁的磁盘数据交换会降低效率. 游标有两种类型:显式游标和隐式游标.在前述程序中用到的SELECT...INTO...查询语句,一次只能从数据库中提取一行数据,对于这种形式的查询和DML操作,系统都会使用一个隐式游标.但是如果要

游标(隐式游标与显示游标)

游标的概念:    游标是SQL的一个内存工作区,由系统或用户以变量的形式定义.游标的作用就是用于临时存储从数据库中提取的数据块.在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理,最后将处理结果显示出来或最终写回数据库.这样数据处理的速度才会提高,否则频繁的磁盘数据交换会降低效率.游标有两种类型:显式游标和隐式游标.在前述程序中用到的SELECT...INTO...查询语句,一次只能从数据库中提取一行数据,对于这种形式的查询和DML操作,系统都会使用一个隐式游标.但是如果要提取