oracle分页
2014-05-11 16:53
225 查看
--创建包 获取数据结果集 CREATE OR REPLACE PACKAGE getDatas_PACKAGE AS TYPE getDatas_cursor IS REF CURSOR; END getDatas_PACKAGE; --创建分页存储过程 CREATE OR REPLACE PROCEDURE FENYE(TABLENAME IN VARCHAR2, PAGSIZE IN NUMBER, PAGENOW IN NUMBER, MYROWS OUT NUMBER, PAGECOUNT OUT NUMBER, FENYE_CURSOR OUT getDatas_PACKAGE.getDatas_cursor) IS V_SQL VARCHAR2(1000); V_BEGIN NUMBER := (PAGENOW - 1) * PAGSIZE + 1; V_END NUMBER := PAGENOW * PAGSIZE; BEGIN V_SQL := 'SELECT * FROM (SELECT T1.*, ROWNUM RN FROM (SELECT * FROM ' || TABLENAME || ' order by sal asc) T1 WHERE ROWNUM <= ' || V_END || ') WHERE RN >= ' || V_BEGIN; OPEN FENYE_CURSOR FOR V_SQL; V_SQL := 'SELECT COUNT(*) FROM ' || TABLENAME; -- execute immediate v_sql into MYROWS; EXECUTE IMMEDIATE V_SQL INTO MYROWS; IF MOD(MYROWS, PAGSIZE) = 0 THEN PAGECOUNT := MYROWS / PAGSIZE; ELSE PAGECOUNT := MYROWS / PAGSIZE + 1; END IF; -- END LOOP; --CLOSE FENYE_CURSOR; END;
相关文章推荐
- Oracle 11g安装与使用
- Oracle VM VirtualBox 4.1.18+kubuntu14.04,使用samba与windows共享文件
- oracle热块争用的解决方法
- Myeclipse 8.6 连接 MySql , JAVADB(derby) , SQLSERVER2012 , Oracle数据库(JDBC方式)
- Oracle10g下载地址--多平台下的32位和64位
- Oracle Enterprise Linux 64-bit下安装apache-tomcat-7.0.53步骤
- Oracle Enterprise Linux 64-bit下安装apache-tomcat-7.0.53步骤
- Oracle数据库dmp文件Dos命令下导入导出
- Oracle的For Update语句
- oracle 数据被删除闪回操作
- imp00017由于oracle错误01401的解决办法
- 查看当前Oracle默认日期格式
- Oracle 多表视图更新(待看完触发器后再来看)
- Oracle 函数 Translate 的用法
- Oracle 冷备份
- 在Oracle VM VirtualBox 4.1.18上安装kubuntu14.04,并设置共享文件夹的步骤
- Oracle中数据类型
- Oracle 数据库实例启动关闭过程
- Oracle sqlplus 常用设置
- sqlserver、mysql、oracle各自的默认端口号