一个游标和存储过程的问题求高手解答
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 /
警告: 创建的过程带有编译错误。