`
fly1206
  • 浏览: 55761 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

oracle高效分页存储过程代码

阅读更多
create or replace package p_page is
   -- author  : pharaohs
   -- created : 2006-4-30 14:14:14
   -- purpose : 分页过程
   type type_cur is ref cursor      --定义游标变量用于返回记录集
  
   procedure pagination(
   pindex in number                 --分页索引
   psql in varchar2                 --产生dataset的sql语句
   psize in number                  --页面大小
   pcount out number                --返回分页总数
   v_cur out type_cur               --返回当前页数据记录
   )

   procedure pagerecordscount(
   psqlcount in varchar2            --产生dataset的sql语句
   prcount   out number             --返回记录总数
   )

end p_page
/
create or replace package body p_page is

procedure pagination(
   pindex in number
   psql in varchar2
   psize in number 
   pcount out number
   v_cur out type_cur
  )
  as

   v_sql varchar2(1000)
   v_count number 
   v_plow number
   v_phei number
  begin
   ------------------------------------------------------------取分页总数
   v_sql := ' select count() from ('  || psql || ' )' 
    ute immediate v_sql into v_count
   pcount := ceil(v_count/psize)
   ------------------------------------------------------------显示任意页内容
   v_phei := pindex  psize + psize
   v_plow := v_phei - psize + 1
   --psql := ' select rownum rn t. from zzda t'               --要求必须包含rownum字段
   v_sql := ' select  from ('  || psql || ' ) where rn between '  || v_plow || '  and '  || v_phei 

   open v_cur for v_sql
 
  end pagination
 
  --
 
  procedure pagerecordscount(
   psqlcount in varchar2
   prcount   out number
   )
   as
 
    v_sql varchar2(1000)
    v_prcount number
  
   begin
 
    v_sql := ' select count() from ('  || psqlcount || ' )' 
     ute immediate v_sql into v_prcount
    prcount := v_prcount                   --返回记录总数                                                    
  
   end pagerecordscount
 
  --
end p_page
/
分享到:
评论

相关推荐

    Oracle通用数据库存储过程代码--高效分页存储过程

    Oracle通用数据库存储过程代码--高效分页存储过程,只需简单的修改即可使用,方便易懂!

    带排序的oracle分页存储过程

    几乎每一个WEB应用都会用到分页,因此,将其做得通用高效就变得非常重要了,根据自己的想法用存储过程做了一个分页的存储过程,与大家分享,希望能够通过讨论得到更好的解决方案。 --之所以用存储过程,是因为以后...

    JAVA上百实例源码以及开源项目源代码

    2个目标文件,FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户...

    asp.net知识库

    可按任意字段排序的分页存储过程(不用临时表的方法,不看全文会后悔) 常用sql存储过程集锦 存储过程中实现类似split功能(charindex) 通过查询系统表得到纵向的表结构 将数据库表中的数据生成Insert脚本的存储过程!!! ...

    autocode中文java版

    AutoCode代码生成器宗旨:简洁、实用、高效、协作  您是不是因为java的开发和维护繁琐而烦恼,目前政府机关、企业大都要求用java来开发项目,本软件将彻底解决您的后顾之忧,通过本软件的自动生成功能,生成的java...

    JAVA上百实例源码以及开源项目

    2个目标文件,FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户...

    java开源包8

    GWT Advanced Table 是一个基于 GWT 框架的网页表格组件,可实现分页数据显示、数据排序和过滤等功能! Google Tag Library 该标记库和 Google 有关。使用该标记库,利用 Google 为你的网站提供网站查询,并且可以...

    java开源包10

    GWT Advanced Table 是一个基于 GWT 框架的网页表格组件,可实现分页数据显示、数据排序和过滤等功能! Google Tag Library 该标记库和 Google 有关。使用该标记库,利用 Google 为你的网站提供网站查询,并且可以...

    亮剑.NET深入体验与实战精要2

    5.4.1 SQL和存储过程级别的事务 227 5.4.2 ADO.NET级别的事务 229 5.4.3 ASP.NET页面级别的事务 230 5.4.4 企业级服务COM+事务 231 5.4.5 System.Transactions 事务处理 236 5.5 Oracle开发常见问题 240 5.5.1 ...

    亮剑.NET深入体验与实战精要3

    5.4.1 SQL和存储过程级别的事务 227 5.4.2 ADO.NET级别的事务 229 5.4.3 ASP.NET页面级别的事务 230 5.4.4 企业级服务COM+事务 231 5.4.5 System.Transactions 事务处理 236 5.5 Oracle开发常见问题 240 5.5.1 ...

    火炬博客系统7

    软件及安装说明 <br> 本系统是一个Struts+Spring+Hibernate组合开发的博客系统,本系统使用分层体系架构,综合运用struts+spring+hibernate 三大主流开源框架构建,稳定高效、功能强大、易于维护。系统分为四个...

    火炬博客系统6

    软件及安装说明 <br> 本系统是一个Struts+Spring+Hibernate组合开发的博客系统,本系统使用分层体系架构,综合运用struts+spring+hibernate 三大主流开源框架构建,稳定高效、功能强大、易于维护。系统分为四个...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例134 使用代码块实现线程同步 174 实例135 使用特殊域变量实现线程同步 175 实例136 使用重入锁实现线程同步 176 实例137 使用线程局部变量实现线程同步 177 实例138 简单的线程通信 179 实例139 简单的线程死锁 ...

    java开源包1

    GWT Advanced Table 是一个基于 GWT 框架的网页表格组件,可实现分页数据显示、数据排序和过滤等功能! Google Tag Library 该标记库和 Google 有关。使用该标记库,利用 Google 为你的网站提供网站查询,并且可以...

    java开源包11

    GWT Advanced Table 是一个基于 GWT 框架的网页表格组件,可实现分页数据显示、数据排序和过滤等功能! Google Tag Library 该标记库和 Google 有关。使用该标记库,利用 Google 为你的网站提供网站查询,并且可以...

Global site tag (gtag.js) - Google Analytics