Oracle存储过程,中涉及到分页时,我建议你用java代码来调用Oracle存储过程,如果你是Oracle的热捧者。那么下面的文章对于你而言一定很有意义。以下的文章就是对相关内容的描述。
成都创新互联长期为近1000家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为左权企业提供专业的成都做网站、网站制作、成都外贸网站建设,左权网站改版等技术服务。拥有10多年丰富建站经验和众多成功案例,为您定制开发。
create table emp(
- id int,
- ename varchar2(30),
- sale number(7,2)
共7位最大就是这样的数据
)
开发一个包-
- create or replace package testpackage as
- type test_cursor is ref cursor;
- end testpackage;
开始写分页的过程
- create or replace procedure fenye
- (tableName in varchar2,
- pagesizes in number,
一页显示记录
- pageNow in number,
- myrows out number,
总记录数
- myPageCount out number,
总页数
- p_cursor out testpackage.test_cursor
返回的记录集
)is
定义变量
定义sql语句 字符串-
- v_sql varchar2(1000);
定义sql长度
定义两个整数
- v_begin number:=(pageNow-1)*pagesizes+1;
- v_end number:=pageNow*pagesizes;
开始执行-
- v_sql:='select * from
- (select t1.*,rownum rn from ( select * from '||tableName||' order by sale) t1 where rownum<='||v_end||')
- where 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;
执行字符串的sql语句 必须格式,计算mypageCount
- if mod(myrows,pagesizes)=0 then
- myPageCount:=myrows/pagesizes;
- else
- myPageCount:=myrows/pagesizes+1;
- end if;
关闭游标
- close p_cursor;-
必须关闭游标,不是不能释放占有的空间,这很重要
- end;
以上文章就是使用java代码 调用Oracle 存储过程的描述。
文章题目:Oracle存储过程中分页,用java代码来完成
网页URL:http://www.shufengxianlan.com/qtweb/news45/399795.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联