手机版
你好,游客 登录 注册
背景:
阅读新闻

Oracle SQL的cursor理解

[日期:2012-11-13] 来源:Linux社区  作者:mikixiyou [字体: ]

隐式游标中大写的"SQL"标识,如SQL%ROWCOUNT表示隐式游标有几行记录;显式游标由开发者自定义,也可以使用如C1%ROWCOUNT表示游标C1有几行记录。通常显式游标都是使用OPEN方式打开的。

使用显式定义的游标使用OPEN方式打开,它的使用方法如下例所示:

  1. set serveroutput on
  2. declare
  3. cursor c1 is
  4. select rownum ,table_name from user_tables where rownum < 10 ;
  5. v_rownum number ;
  6. v_tablename varchar2 ( 256 );
  7. begin
  8. open c1;
  9. dbms_output.put_line( ' 游标当前行数 1:' || c1% rowcount );
  10. loop
  11. fetch c1 into v_rownum,v_tablename;
  12. exit when c1% notfound ;
  13. dbms_output.put_line( ' 游标当前行 :' || c1% rowcount || ' table_name:' ||v_tablename);
  14. end loop ;
  15. dbms_output.put_line( ' 游标当前行数 2:' || c1% rowcount );
  16. close c1;
  17. end ;

在SQLPUS中执行,得到如下结果。

  1. 游标当前行数 1:0
  2. 游标当前行 :1 table_name:T_SS
  3. 游标当前行 :2 table_name:T_TARGET
  4. 游标当前行 :3 table_name:T_SS_NORMAL
  5. 游标当前行 :4 table_name:T_MYSTAT
  6. 游标当前行 :5 table_name:T_WXL_GETDATA_LOG
  7. 游标当前行 :6 table_name:ALL_OBJ
  8. 游标当前行 :7 table_name:DBA_OBJ
  9. 游标当前行 :8 table_name:T_RPT_XXX
  10. 游标当前行 :9 table_name:CMS_DOC_BODY
  11. 游标当前行数 2:9
linux
相关资讯       Oracle SQL  oracle数据库教程  Oracle cursor 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款