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存储过程,http://www.myexception.cn/oracle-develop/177537.html
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存储过程,http://www.myexception.cn/oracle-develop/177537.html
相关推荐
功能说明 写好oracle的连接字符串和查询语句,调用程序中的方法可以很方便的实现分页功能。该方法中,将参数连接字符串,查询的sql语句,... 效率不是很高,如有高人写出很厉害的分页存储过程,希望您与大家分享。
通过SQL 查询分析器,显示比较:我的结论是: ...分页方案三:(利用SQL的游标存储过程分页) 效率最差,但是最为通用 SELECT u.username FROM `user` u join contact_info c on (u.id=c.user_id) and c.address='123';
第一部分 ORACLE系统优化基本知识 23 第1章 ORACLE结构回顾 23 §1.1 Oracle数据库结构 23 §1.1.1 Oracle数据字典 23 §1.1.2 表空间与数据文件 24 §1.1.3 Oracle实例(Instance) 24 §1.2 Oracle文件 26 §1.2.1...
Access 微软 Access是一种桌面数据库,只适合数据量少的应用,在处理少量 数据和单机访问的数据库时是很好的,效率也很高 小型企业 三、 Oracle数据库概述 ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以...
可按任意字段排序的分页存储过程(不用临时表的方法,不看全文会后悔) 常用sql存储过程集锦 存储过程中实现类似split功能(charindex) 通过查询系统表得到纵向的表结构 将数据库表中的数据生成Insert脚本的存储过程!!! ...
实例271 清理SESSION缓存提高网站访问的效率 358 第6章 图形图像处理 361 6.1 图像与统计 362 实例272 图形计数器 362 实例273 GD2图形计数器 363 实例274 通过图像显示投票统计结果 365 实例275 通过图像显示密码...
实例271 清理SESSION缓存提高网站访问的效率 358 第6章 图形图像处理 361 6.1 图像与统计 362 实例272 图形计数器 362 实例273 GD2图形计数器 363 实例274 通过图像显示投票统计结果 365 实例275 通过图像显示密码...
用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。 1.9.2 准备 create table t_user ( username varchar2(20), password varchar2(20) ); create table t_user_temp ( username varchar...
部分功能效率显著提高,在页面生成上亦有可观的效率提升。 # 支持全站页面url自定义部署,首页允许分页,域名绑定将更加灵活多变。 # 新增类目字段,设置广告,不同子站栏目之间等内容的关联。 # 支持多种类目选择...
-- 首先,以超级管理员的身份登录oracle sqlplus sys/bjsxt as sysdba --然后,解除对scott用户的锁 alter user scott account unlock; --那么这个用户名就能使用了。 --(默认全局数据库名orcl) 1、...
实例113 深克隆效率的比较 141 实例114 transient关键字的应用 143 5.7 接口和内部类 145 实例115 使用sort()方法排序 145 实例116 简化compareTo()方法的重写 146 实例117 策略模式的简单应用 148 实例118 适配器...
5.Java中的分页、效率考虑。 6.简单介绍您所了解的structs。 1.xml在项目中的作用 2.s-EJB 与 e-EJB的区别 3.会话面的作用 4.cmp与bmp的优缺点 5.j2me程序的必需的几个部分 6.c/s与b/s的区别 7.构建一...
在数据库处理方面,不需要在数据层借助存储过程及数据库服务器端函数封装过多的业务逻辑,因此数据库系统采用相对精巧的MySQL[6]。 该在线博客系统服务器端如果需要布置到其他主机上,则该主机必备条件如下: 1. ...