-
静态游标
- 显式
普通的预先定义的,且已与SQL关联的CURSOR都属于显式静态游标。 - 隐式
未预先定义的游标,但ORACLE在PLSQL中每执行一次DML都会有隐式游标,通常与游标变量(SQL%XXX)结合使用,下一篇会展开。
- 显式
-
动态游标
- REF
静态游标是在运行前将游标变量和SQL关联,而动态游标恰恰相反是在运行后将游标变量和SQL进行关联。
REF游标实例:
点击(此处)折叠或打开
- DECLARE
- TYPE cus_cur_type IS REF CURSOR RETURN chg_test_b%ROWTYPE; --强类型Ref游标,查询的sql必须返回chg_test_b表类型
- --type cus_cur_type is ref cursor;弱类型Ref游标,返回类型没有限制
- rowlist cus_cur_type; -- 声明游标变量
- rowvalue chg_test_b%ROWTYPE; --声明行变量
- BEGIN
- OPEN rowlist FOR --打开游标,并关联sql
- SELECT * FROM chg_test_b b;
- LOOP
- FETCH rowlist
- INTO rowvalue; --按行取出数据
- EXIT WHEN rowlist%NOTFOUND; --判断是否还存在记录,如果不存在终止游标
- dbms_output.put_line(rowvalue.chg_name); --将的到的值打印,如果查询只有一个字段这里只需写变量名即可。
- END LOOP;
- CLOSE rowlist; --关闭游标
- END;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29599494/viewspace-2113308/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29599494/viewspace-2113308/