1  create or replace package page_package as
  2  type page_cursor is ref cursor;
  3* end page_package
SQL> /警告: 创建的包带有编译错误。SQL> edit;
已写入 file afiedt.buf  1  create or replace procedure MaincarnoteList_Page
  2  (
  3     Page_Now in number,
  4     Page_Size in number,
  5     Table_Name in varchar2,
  6     Row_Count out number,
  7     Page_Count out number,
  8     rs_list out page_package.page_cursor
  9  )
 10  as
 11     v_sql varchar2(1000);
 12     v_begin number:=(Page_Now-1)*Page_Size+1;
 13     v_end number:=Page_Size*Page_Now;
 14  begin
 15     v_sql:='select * from (select rownum r,t * from (select * from '||Table_Name||') t where rownum<='||v_end||') where r>='||v_begin;
 16        open rs_list for v_sql;
 17        v_sql:='select count(*) from '||table_name;
 18        execute immediate v_sql into row_count;--立即执行此SQL语句,并将结果赋给row_count
 19        if mod(Row_Count,Page_Size)=0 then
 20           Page_Count:=Row_Count/Page_Size;
 21        else
 22           Page_Count:=Row_Count/Page_Size+1;
 23        close rs_list;
 24        end if;
 25* end MaincarnoteList_Page
 26  /警告: 创建的过程带有编译错误。