ITPub博客

首页 > 数据库 > Oracle > oracle存储过程分页2

oracle存储过程分页2

Oracle 作者:hyundai984 时间:2011-08-21 21:32:00 0 删除 编辑



如果要在oracle数据库中分页,应该用什么方法呢?使用存储过程是一个不错的想法,下文对使用oracle存储过程分页的方法作了详细的阐述,供您参考。

AD:

 

使用oracle存储过程同样可以实现分页,下面就为您介绍一个使用oracle存储过程分页的例子,如果您对oracle存储过程方面感兴趣的话,不妨一看。

一个使用oracle存储过程分页的小例子: 
1, 建一个程序包。如下:


  1. CREATE OR REPLACE PACKAGE TESTPACKAGE AS   
  2.  
  3. TYPE Test_CURSOR IS REF CURSOR;   
  4.  
  5. end TESTPACKAGE;   

2,建立存储过程,存储过程为:


  1. create or replace procedure TESTC(p_CURSOR out TESTPACKAGE.Test_CURSOR,lowerNum in numeric,higherNum in numeric) is   
  2. begin   
  3. OPEN p_CURSOR FOR select from select row_.*, rownum rownum_ from (select id,title,status from HYQTEST) row_ where rownum <higherNum) where rownum_ >lowerNum;   
  4. end TESTC;  

使用plsql测试:


  1. declare   
  2. lowerNum integer;   
  3. higherNum integer;   
  4. id varchar2(10);   
  5. title varchar2(500);   
  6. status numeric;   
  7. testpackage.Test_CURSOR;   
  8. rownum_ integer;   
  9. begin   
  10. lowerNum:=1  
  11. higherNum:=10  
  12. TESTC(c,lowerNum,higherNum);   
  13. LOOP   
  14. FETCH INTO id,title,status,rownum_;   
  15. EXIT WHEN c%NOTFOUND;   
  16. DBMS_OUTPUT.PUT_LINE('=行号='||rownum_||'=='||id||'==='||title||'===='||status||'==');   
  17. END LOOP;   
  18. CLOSE c;   
  19.  
  20. end;  
<!-- 正文结束 -->

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23398695/viewspace-1116951/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2010-02-25