REF游标
来源:互联网 发布:java.nio jar 下载 编辑:程序博客网 时间:2024/06/05 07:18
强型REF游标
定义:TYPE <游标名> IS REF CURSOR RETURN<返回类型>;
操作:OPEN <游标名> For <select 语句>--打开游标
FETCH <游标名> INTO 变量1,变量2,变量3,....变量n,;
或者
FETCH <游标名> INTO 行对象; --取出游标当前位置的值
CLOSE <游标名> --关闭游标
属性: %NOTFOUND --如果FETCH语句失败,则该属性为"TRUE",否则为"FALSE";
%FOUND --如果FETCH语句成果,则该属性为"TRUE",否则为"FALSE";
%ROWCOUNT --返回游标当前行的行数;
%ISOPEN --如果游标是开的则返回"TRUE",否则为"FALSE";
使用:
示例:
DECLARE
type c_type is ref cursor return emp%rowtype; --定义游标
c_1 c_type; --实例化这个游标类型
r emp%rowtype;
BEGIN
dbms_output.put_line('行号 姓名 薪水');
open c_1 for select * from emp;
loop
fetch c_1 into r;
exit when c_1%notfound;
dbms_output.put_line(c_1%rowcount||' '||r.ename||' '||r.sal); --输出结果,需要 set serverout on 才能显示.
END LOOP;
close c_1;
END;
弱型REF游标
定义:TYPE <游标名> IS REF CURSOR;
操作:OPEN <游标名> For <select 语句> --打开游标
FETCH <游标名> INTO 变量1,变量2,变量3,....变量n,;
或者
FETCH <游标名> INTO 行对象; --取出游标当前位置的值
CLOSE <游标名> --关闭游标
属性: %NOTFOUND --如果FETCH语句失败,则该属性为"TRUE",否则为"FALSE";
%FOUND --如果FETCH语句成果,则该属性为"TRUE",否则为"FALSE";
%ROWCOUNT --返回游标当前行的行数;
%ISOPEN --如果游标是开的则返回"TRUE",否则为"FALSE";
示例:
set autoprint on;
var c_1 refcursor;
DECLARE
n number;
BEGIN
n:=&请输入;
if n=1 then
open :c_1 for select * from emp;
else
open :c_1 for select * from dept;
end if;
END;
注意:
当使用显示游标的时候,需要在定义显示游标的时候指定相应的select语句,这种显示游标称为静态游标。
当使用游标变量时,在定义游标变量时不用指定select 语句,而是在打开游标时指定select语句,从而实现动态的游标操作。
- ref游标
- REF游标
- REF游标
- 动态游标(REF CURSOR)
- 动态游标(REF CURSOR)
- REF 游标 (待填坑)
- 示例5 REF游标
- 什么是 REF游标
- REF游标的用法
- Oracle REF动态游标
- 关于游标cursor、游标引用 ref cursor
- Oracle游标(三)REF动态游标
- Oracle使用REF 动态游标
- 10.3游标变量 --REF CURSOR
- oracle 游标变量REF Cursor
- Oracle使用REF 动态游标
- Oracle REF动态游标使用
- 参照变量_游标变量(ref cursor)
- 问题六十: 用筛法求10000内的素数。
- 黑马程序员_String
- android移植(三)-一些问题与解决方法
- Android初涉JNI,从零打造你的第一个demo
- HDOJ 2181 哈密顿绕行世界问题 (回溯)
- REF游标
- 两个Init()方法的区别
- JAVA中堆栈的区别
- C#绘制圆角窗体
- Sharepoint列表项权限修改
- 【问题】 文本解析问题
- 类模板的运用
- c++
- java观察者模式