论坛登陆 注册 教程 笑话 影视 投稿
首页 | 页界资讯 | 网络应用 | 软件应用 | 组网技术 | 网络原理 | 聊天通讯 | 网管知识 | 帮助
笑话 | 操作系统 | 注 册 表 | 编程开发 | 数 据 库 | 媒体动画 | 网页设计 | 图形图象 | 地图
论坛 | 网络安全 | 安全防范 | 服 务 器 | 硬件学堂 | 路由技术 | 搜索研究 | 站长经验 | 投稿
影院 | 教育频道 | 特色专题 | 精文荟萃 | 注 册 码 | 论坛社区 | 网站地图 | 广告服务 | 旧版
设为首页 加入收藏
当前位置:首页>>文章>>编程开发>>net专区>>正文

ASP.NET调用oracle实现快速分页

www.xker.com 作者:PPLUNCLE 来源:csdn 加入日期:2006-3-14 10:45:17

【问题提问、论坛交流】本文转自PPLUNCLE的blog:http://dev.csdn.net/article/82/82808.shtm

《使用 ADO.NET 访问 Oracle 9i 存储过程》见下面的介绍(如果对这个不怎么懂的,还是先看看下面文章)http://www.microsoft.com/china/MSDN/library/data/dataAccess/DMSDNorsps.mspx  

  包定义:  

   create or replace package MaterialManage is

   TYPE T_CURSOR IS REF CURSOR;

   Procedure Per_QuickPage

   (

   TbName in varchar2, --表名

   FieldStr in varchar2, --字段集

   RowFilter in varchar2, --过滤条件

   SortStr in varchar2, --排序集

   RownumFieldStr in varchar2, --分页条件

   TotalCount out number, --总记录数

   Cur_ReturnCur out T_CURSOR --返回的游标

   );

  end MaterialManage;

  
  包主体:
  

  create or replace package body MaterialManage is

   Procedure Per_QuickPage

   (

   TbName in varchar2, --表 名

   FieldStr in varchar2, --字段集

   RowFilter in varchar2, --过滤条件

   SortStr in varchar2, --排序集

   MinRowNum in number, --分页小值

   MaxRowNum in number, --分页大值

   TotalCount out number, --总记录数

   Cur_ReturnCur out T_CURSOR

   )

   is

   v_SourceTb1 varchar2(3000); --动态表名1

   v_SourceTb2 varchar2(3000); --动态表名2

   v_SourceTb3 varchar2(3000); --动态表名3

   v_SourceTb4 varchar2(3000); --动态表名4

   v_TotalCount varchar2(50); --总记录数

   v_sql varchar2(3000); --动态sql

   begin

   v_SourceTb1 := '(select '   FieldStr   ' from '   TbName   ') SourceTb1';

   v_SourceTb2 := '(select * from '   v_SourceTb1   ' where '   RowFilter   ' '   SortStr   ') SourceTb2';

   v_SourceTb3 := '(select rownum as Rowindex,SourceTb2.* from '   v_SourceTb2   ' where rownum<='   MaxRowNum   ') SourceTb3';

   v_SourceTb4 := '(select * from '   v_SourceTb1   ' where '   RowFilter   ') SourceTb4';

   v_sql := 'select count(*) as TotalCount from '   v_SourceTb4;

   execute immediate v_sql into v_TotalCount;

   TotalCount := v_TotalCount;

   v_sql := 'select * from '   v_SourceTb3   ' where RowIndex >='  MinRowNum;

   open Cur_ReturnCur for v_sql;

   end Per_QuickPage;

  END MaterialManage;  

  由于oracle有个rownum特性,所以分页的时候就是利用rownum来实现如果大家还有什么更好的办法记得告诉我一声,多谢了,因为我测试了上面的分页方法效率并不是很高  

  存储过程返回了两个参数:TotalCount :当前条件下的总记录数 Cur_ReturnCur :游标类型,就是所要读取的记录的集合
 
  下面是ASP.NET中调用的代码:  

  ///

  /// 调用存储过程实现快速分页

  ///


  /// 表名称

  /// 字段名称

  /// 过滤条件

  /// 排序字段

本新闻共2页,当前在第1页  1  2  

编辑:xker.com

上一篇:ASP.NET中实现大结果集分页研讨
下一篇:没有了
关闭窗口】【技术交流】【收藏此页
相关文章
·ASP.NET中实现大结果集分页研讨·ASP.NET1.0升级ASP.NET2.0的问题总结·将Oracle的查询结果输出为文件
·使用智能优化器提高Oracle的性能极限·Asp.Net细节性问题回答精萃·十天学会ASP.net之第二天
·10天学会ASP.net之第一天·ASP.NET页面间的传值的几种方法·ASP.NET:掌握Web窗体的生命周期与状态
·Oracle数据库游标使用大全·Oracle9i中监视索引的使用·使用Oracle实现实时通信
·ASP.NET入门随想之多态、接口与委托·AJAX+ASP.NET解决网页打开等待问题·关于ASP,ASP.NET,VB.NET里的MD5加密函
推荐文章 最新文章 热门文章
·Windows IIS WEB服务器配置安全规范(
·网管手册 70例网络故障排除方法(上)
·ASP.NET中实现大结果集分页研讨
·java写的查找重复电话号码程序
·ASP.NET1.0升级ASP.NET2.0的问题总结
·在Linux操作系统中如何截获系统调用
·照片处理:美女肖像照片简单靓肤技巧
·PHP安全配置之实现安全的两个重点
·手工优化windows XP系统
·用 VC++和Winsock 实现与 HTTP 服务
·SQL Server 2005数据库开发概述
·Jsp开发环境配置全过程
·Fireworks制作妇女节主题宣传动画(图
·主动FTP与被动FTP-权威解释
·FTP连接后为什么列表错误,无法列表
·ASP.NET调用oracle实现快速分页
·3.15打击奸商 拒绝JS的四大法则
·拥有电视卡 随心所欲看加密电视
·IP地址突变之谜 破解DHCP服务依存关系
·网络病毒安全防范诀窍分享
·浅析各种计算机病毒应对方法
·利用交换机防范蠕虫病毒的入侵
·用系统进程拒绝病毒的侵袭
·网络安全基础:几个易被误认为病毒的
·电脑木马病毒完全查杀
·加密也挡不住我 网站访问一步到位
·简单而且实用 快速打开“属性”面板
·为光驱添加“关闭”命令
·Windows IIS WEB服务器配置安全规范(
·Windows IIS WEB服务器配置安全规范(
·个人简历表格
·免费代理IP(每日更新)
·QQ密码丢失后能做的事情:快速找回密码
·Norton AntiVirus 2006 注册码(激活
·豪杰超级解霸V9.1正版注册码
·WinRAR 3.51 注册码
·系统优化 专题
·找回QQ密码的注意事项 
·史上最强QQ个人档案资料欣赏
·QQ收费头像免费使用的方法 
·Ajax技术开发指南
·求职简历封皮
·最经典的黑客入门教材
·ACDSee v8.0注册码
·应届毕业生求职信
评论

设为首页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
Copyright © 2003-2006 xker.com All rights reserved.小新技术网 合作广告QQ:12231446
本页浏览次数: