听韩老师的oracle的分页存储过程
--创建一个包,在该包中,我定义类型test_cursor,是个游标
create or replace package testpackage as
type test_cursor is ref cursor;
end testpackage;
--开始编写分页过程
create or replace produrce fenye --fenye
(tableName in varchar2,
pageSize in number,
pageNow in number,
myRows out number,--总记录数
myPageCount out number,--总页数
p_cursor out tespackage.test_cursor,--返回的记录集
) is
--定义部分
--定义sql语句 字符串
v_sql varchar2(1000);
--定义两个整数
v_begin number:=(pageNow-1)*pageSize+1;
v_end number:=pageNow*pageSize;
begin
--执行部分
v_sql:='select * from
( select t1.*,rownum rn from
( select * from '||tableName||') t1 --第一个select语句出来的表的视图t1
where rownum<='||v_end||'
)
wherw rn>='||v_begin';
--把游标和sql关联
open p_cursor for v_sql;
--计算myRows和myPageCount
--组织一个sql语句
v_sql:='select count(*) from '||tableName';
--执行sql语句,并把返回的值赋给myRows
execute immediate v_sql into myRows;
if mod(myRows,pageSize)=0 then
myPageCount:=myRows/pageSize;
else
myPageCount:=myRows/pageSize+1;
end if;
--关闭游标
close p_cursor;
end;
分享到:
相关推荐
这是我学习Oracle时,老师给的讲义,包含了Oracle从入门到高级应用的...Day08-Oracle分页查询和视图.pdf Day09-存储过程.pdf Day10-变量定义和循环控制.pdf Day11-plsql游标和函数.pdf Day12-触发器.pdf Day13-索引.pdf
存储过程是Oracle数据库中预编译的SQL语句集合,可以视为可重复使用的功能模块。通过创建存储过程,我们可以提高代码复用性,减少网络通信,提升系统性能。存储过程可以包含输入、输出参数,甚至可以有返回值。在...
Oracle数据库是全球广泛...Oracle SQL优化是一个复杂而细致的过程,需要结合实际业务场景,综合运用多种技术和策略。通过对SQL的深入理解和优化,我们可以显著提升Oracle数据库的运行效率,确保系统的稳定性和高性能。
ASP.NET中的DataList控件是Web Forms中一种...同时,还可以根据实际项目需求,进一步优化性能,如缓存查询结果,或使用存储过程来提高分页效率。记住,实践是最好的老师,多尝试不同的方法,以找到最适合你的解决方案。
### Oracle实用教程知识点详解 #### 一、Oracle认证与...以上内容覆盖了韩顺平老师的Oracle教程中的关键知识点,从安装配置到日常维护,从基础命令到高级功能,旨在帮助读者全面了解Oracle数据库管理系统的各个方面。
- **安装过程**:Oracle 10g 的安装过程相对复杂,需要按照官方文档的指导进行。 - **默认用户**: - **SYS 用户**:拥有最高权限,具有 `SYSDBA` 角色,可以创建数据库,初始密码为 `change_on_install`。 - **...
PHP是开发动态Web应用的主流技术之一,交互式Web应用的关键是如何访问数据库,对PHP构建交互式Web和访问Oracle进行了论进,举例说明了Oracle查询结果的分页技术。 1. PHP的功能特点 PHP是一种面向Internet/...
总的来说,柳老师的MVC源代码示例是一个完整的Web应用架构,涵盖了从数据库交互到用户界面展示的全过程。通过学习和分析这个源代码,开发者可以深入理解MVC模式的工作原理,提高自己的Web开发技能。
1. 数据库概念:理解数据库是存储和组织数据的系统,如MySQL、Oracle、SQL Server等。了解关系型数据库模型,其中数据以表格形式存储,表与表之间可能存在关联。 2. SQL语法:学习SQL的基本语句,包括SELECT(查询...
4. **数据库连接**:使用JDBC(Java Database Connectivity)API连接数据库,如MySQL或Oracle。需要加载数据库驱动,建立连接,创建Statement或PreparedStatement对象,执行SQL查询,最后关闭连接。 5. **SQL查询**...
网上书店系统通常会使用关系型数据库如MySQL或Oracle来存储书籍信息、用户信息、订单数据等。数据库设计包括数据表的创建,如书籍表(包含书名、作者、出版社、价格等信息)、用户表(用户名、密码、联系方式等)、...
-- 首先,以超级管理员的身份登录oracle sqlplus sys/bjsxt as sysdba --然后,解除对scott用户的锁 alter user scott account unlock; --那么这个用户名就能使用了。 --(默认全局数据库名orcl) 1、...
│ Java面试题28.mysql和oracle的分页语句(着重说思路).mp4 │ Java面试题29.触发器的使用场景.mp4 │ Java面试题30.存储过程的优点.mp4 │ Java面试题31.jdbc调用存储过程.mp4 │ Java面试题32.简单说一下你对...
3. 数据库操作:Java通过JDBC(Java Database Connectivity)接口与数据库进行交互,通常会使用MySQL、Oracle或PostgreSQL等关系型数据库存储留言数据。ORM框架如Hibernate或MyBatis可进一步简化数据库操作。 三、...
3、存储过程与触发器必须讲,经常被面试到? 92 4、数据库三范式是什么? 94 5、说出一些数据库优化方面的经验? 95 6、union和union all有什么不同? 96 7.分页语句 97 8.用一条SQL语句 查询出每门课都大于80分的学生...
3、存储过程与触发器必须讲,经常被面试到? 92 4、数据库三范式是什么? 94 5、说出一些数据库优化方面的经验? 95 6、union和union all有什么不同? 96 7.分页语句 97 8.用一条SQL语句 查询出每门课都大于80分的学生...