隐式游标中大写的"SQL"标识,如SQL%ROWCOUNT表示隐式游标有几行记录;显式游标由开发者自定义,也可以使用如C1%ROWCOUNT表示游标C1有几行记录。通常显式游标都是使用OPEN方式打开的。
使用显式定义的游标使用OPEN方式打开,它的使用方法如下例所示:
- set serveroutput on
- declare
- cursor c1 is
- select rownum ,table_name from user_tables where rownum < 10 ;
- v_rownum number ;
- v_tablename varchar2 ( 256 );
- begin
- open c1;
- dbms_output.put_line( ' 游标当前行数 1:' || c1% rowcount );
- loop
- fetch c1 into v_rownum,v_tablename;
- exit when c1% notfound ;
- dbms_output.put_line( ' 游标当前行 :' || c1% rowcount || ' table_name:' ||v_tablename);
- end loop ;
- dbms_output.put_line( ' 游标当前行数 2:' || c1% rowcount );
- close c1;
- end ;
在SQLPUS中执行,得到如下结果。
- 游标当前行数 1:0
- 游标当前行 :1 table_name:T_SS
- 游标当前行 :2 table_name:T_TARGET
- 游标当前行 :3 table_name:T_SS_NORMAL
- 游标当前行 :4 table_name:T_MYSTAT
- 游标当前行 :5 table_name:T_WXL_GETDATA_LOG
- 游标当前行 :6 table_name:ALL_OBJ
- 游标当前行 :7 table_name:DBA_OBJ
- 游标当前行 :8 table_name:T_RPT_XXX
- 游标当前行 :9 table_name:CMS_DOC_BODY
- 游标当前行数 2:9