REF CURSOR和CURSOR
REF CURSOR
DECLARE
TYPE TY_EMP_CUR IS REF CURSOR;
V_Emp_Cur TY_EMP_CUR;
V_Id EMP.ID%TYPE;
BEGIN
OPEN V_Emp_Cur FOR SELECT ID FROM EMP; --REF CURSOR的SELECT语句赋值位置,可以在逻辑模块中再次更改
FETCH V_Emp_Cur INTO V_Id; --FETCH的作用的读取当前指针并移动到下一个指针目标
WHILE V_Emp_Cur%FOUND LOOP
DBMS_OUTPUT.PUT_LINE(V_Id);
FETCH V_Emp_Cur INTO V_Id;
END LOOP;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('Other exceptions');
CONTINUE;
END;
CURSOR
DECLARE
CURSOR V_Emp_Cur IS SELECT ID FROM EMP; --传统CURSOR的SELECT语句赋值位置,后期不可更改
V_Id EMP.ID%TYPE;
BEGIN
OPEN V_Emp_Cur;
FETCH V_Emp_Cur INTO V_Id; --FETCH的作用的读取当前指针并移动到下一个指针目标
WHILE V_Emp_Cur%FOUND LOOP
DBMS_OUTPUT.PUT_LINE(V_Id);
FETCH V_Emp_Cur INTO V_Id;
END LOOP;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('Other exceptions');
CONTINUE;
END;
总结:REF CURSOR和传统的CURSOR相比,传统的CURSOR只能在定义模块中给予该CURSOR相应的SELECT语句去完成定义,且不能后期在逻辑模块再次进行改变,用途很局限,除非SELECT语句不会变化;而REF CURSOR更像是定义一种类型,在定义模块中定义完TYPE和此TYPE的VARIABLE,在逻辑模块中去给予SELECT语句,相当于赋值变量,用法灵活,更方便遍历、绑定变量等实际中应用比较多的操作。
REF CURSOR和CURSOR的更多相关文章
- cursor:hand & cursor:pointer
1.cursor:hand & cursor:pointer都是将鼠标设置为手形. 2.cursor:hand存在兼容性问题,firefox并不支持该属性值.但大部分主流浏览器支持cursor ...
- Use Cursor
declare : CURSOR cursor_name IS select_statement ; open : OPEN cursor_name if the query returns no r ...
- Oracle Cursor的使用
When Oracle Database executes a SQL statement, it stores the result set and processing information i ...
- Android笔记——关于Cursor类的介绍
使用过 SQLite数据库的童鞋对 Cursor 应该不陌生,加深自己和大家对Android 中使用 Cursor 的理解. 关于 Cursor 在你理解和使用 Android Cursor 的时候你 ...
- cursor.MySQLCursorDict Class
5.9.6.4 cursor.MySQLCursorDict Class The MySQLCursorDict class inherits from MySQLCursor. This class ...
- css cursor 的可选值(鼠标的各种样式)
crosshair; 十字准心 The cursor render as a crosshair游标表现为十字准线 cursor: pointer; cursor: hand;写两个是为了照顾IE5, ...
- 举例详解CSS中的cursor属性
这篇文章主要举例介绍了CSS中的cursor属性,包括zoom-in/zoom-out和grab/grabbing等常用属性值的使用,需要的朋友可以参考下 一.开篇之言 CSS3的领域范围已经渗透到了 ...
- CSS光标cursor
前面的话 在浏览器中,光标对于提供交互反馈很有用.通过在不同的场景中改变光标,就能赋予其不同的含义 定义 cursor光标 值: [<uri>,]*[auto | default | po ...
- MySQL Cursor
MySQL Cursor Summary: in this tutorial, you will learn how to use MySQL cursor in stored procedures ...
随机推荐
- Hyperworks、Nastran、Abaqus与ansys的区别
hypermesh不过是前处理,radioos就是hm的求解器,也是非常强大的可以处理很多非线性问题,最重要的是hm的优化功能强大.比那几个好一些.abaqus适合非线性分析,尤其是接触分析.nast ...
- uva-699 Not so Mobile (杠杆,巧妙递归)
Not so Mobile Before being an ubiquous communications gadget, a mobile was just a structure made ...
- Oracle 11g 的server结果缓存result_cache_mode
对于常常要查的结果集,返回少量记录,server端是能够缓存的,结果集保存在共享池中,假设是绑定变量,绑定变量的值也要一样. SQL> show parameter result_cache N ...
- 自己动手写处理器之第一阶段(3)——MIPS32指令集架构简单介绍
将陆续上传本人写的新书<自己动手写处理器>(尚未出版).今天是第四篇.我尽量每周四篇 1.4 MIPS32指令集架构简单介绍 本书设计的处理器遵循MIPS32 Release 1架构,所以 ...
- linux select 网络模型
io模型: 同步IO: 阻塞形式,非阻塞形式(轮询).信号驱动IO.IO复用(select, poll, epoll): 异步io:aio_read() 典型场景: 1.客户端处理多种IO------ ...
- HTML标记语言和CSS样式的简单运用(Nineteenth Day)
曾经励志下去要坚持把每天所学的知识记录下来,可是坚持了几天后,就觉得自己坚持不下去了....这几天自己好好的想了想,觉得不能坚持也得要坚持,因为要对自己负责,所以得学会逼着自己去做,只有这样才能把一件 ...
- 多线程笔记--原子操作Interlocked系列函数
前面写了一个多线程报数的功能,为了描述方便和代码简洁起见,只输出最后的报数结果来观察程序运行结果.这非常类似一个网站的客户访问统计,每个用户登录用一个线程模拟,线程运行时将一个表示计数的变量递增.程序 ...
- 我用过的Linux命令--修改主机名
下面的所有设置都是在CentOS中实验的,其他的Linux系统的玩法是一样的,只是配置文件的目录可能不一样. 局域网中的主机名类似于广域网中的域名,修改主机名有两种方式: (1)在当前会话中修改主机名 ...
- 算法之旅,直奔<algorithm>之十五 find
find(vs2010) 引言 这是我学习总结 <algorithm>的第十五篇.关于<algorithm>,每篇都很小,但是都很好用,可以秀出你的个性. 作用 find的作用 ...
- win7 64位 TortoiseSVN-1.8.4客户端安装
下载地址链接:http://pan.baidu.com/s/1nukeBVz 密码:tc79 (32 64位都有,注意区分) next一路安装 安装好后,在需要和服务器同步的文件夹图标上--鼠标右键- ...