`
nianshi
  • 浏览: 416300 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

老式分页存储过程

阅读更多

在ASP.Net中的DataGrid控它有内置分页功能,它会把所有的数据从数据库读出来再进行分页,如果数据量很大的时候,默认的分页方式效率是很低的。看看在之前的sql 2000中的我们是什么分页的


create  proc [dbo].[page_table]
(
  @pageNo int, --当前页数值,最小为1,表示第一页
  @pageSize int, --每页显示条数
  @PageCount int out,--获取总页数
)
as
set nocount on  --使返回的结果中不包含有关受 Transact-SQL 语句影响的行数的信息。

declare @start int,@itemscount int
 --获取总页数 
 select @PageCount =CEILING( (count(ID)+0.0)/@PageSize)
 FROM 表
 where 条件
--分页
 if(@pageNo<>1) //是否为第一页
 begin
   set @itemscount=(@pageNo-1)*@pageSize+1  
   set rowcount @itemscount
   SELECT @start = ID
   FROM 表
   where 条件
   order by ID desc
 
   set rowcount @pageSize // 取每页显示条数
   SELECT  查询所须字段
   FROM  表
   where  id>= @ start and 其它条件 // id>= @itemscount
   order by ID desc 
  end
else //第一页查询
 begin
  set rowcount @pageSize // 取每页显示条数
  SELECT  查询所须字段
  FROM 表
  where 条件
  order by ID desc      
 end 
set rowcount 0

这样的话一次只取“每页显示条数” 大大提高了效率

分享到:
评论

相关推荐

    ajax假分页(J2ee)

    3. **兼容性检查**:确保代码在各种浏览器环境下都能正常工作,特别是对于不支持Ajax的老式浏览器。 4. **用户体验**:添加适当的加载提示,让用户知道数据正在加载,同时考虑在无更多数据时的提示处理。 总的来说...

    采集工具_采集软件_熊猫智能采集助手

    除老式采集工具软件所具有的功能外,特有功能包括: 一、面向对象采集。一个采集对象的子项内容可以是分散在若干个不同页面内,页面间可以是需要通过多次链接才能到达,数据彼此间可以具有复杂逻辑关系。 二、复杂...

    MyBatis 3.5.7 参考文档.pdf

    MyBatis是一款优秀的持久层框架,它主要支持自定义SQL、存储过程以及高级映射。MyBatis可以免去几乎所有的JDBC代码以及设置参数和获取结果集的工作,从而可以更加专注于业务逻辑的处理。 在MyBatis中,可以通过简单...

    MyBatis3官方中文文档

    MyBatis可以与各种数据库交互,并支持定制化SQL、存储过程以及高级映射。在了解MyBatis之前,我们需要明白持久层框架的作用主要是用于解决Java应用程序与数据库之间的交互问题。 首先,MyBatis的入门安装很简单,...

    熊猫采集助手 v1.1.0 免费版.zip

    除老式采集工具软件所具有的功能外,特有功能包括:  一、面向对象采集。一个采集对象的子项内容可以是分散在若干个不同页面内,页面间可以是需要通过多次链接才能到达,数据彼此间可以具有复杂逻辑关系。  二、...

    计算机的保护模式ppt课件.ppt

    段寄存器不再直接存储段基址,而是存储段描述符的索引,段描述符包含在全局描述符表(GDTR)和局部描述符表(LDTR)中,提供关于段的详细信息,包括32位的段基址。 总之,保护模式是现代计算机系统的关键组成部分,...

    Spring3.0.1+Mybatis3.0.5+Struts2.2.3.1+velocity1.7+DWZ

    Mybatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。Mybatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。Mybatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs...

    清理备用内存的软件,感觉很不错

    内存是计算机运行程序时临时存储数据的地方,当内存使用过多或者碎片化严重时,可能会导致系统运行缓慢。因此,清理备用内存的软件能帮助释放不再使用的内存空间,提高计算机的响应速度。 描述中的“感觉很不错”...

    电脑报技术精华集锦.pdf

    - PQMagic是一款流行的老式磁盘分区工具,能够无损分区,但新版本的Windows推荐使用自带的磁盘管理工具,因为它支持动态磁盘和GPT分区,也兼容老式MBR分区。 - convert命令用于转换文件系统格式,如将FAT32转换为...

    Oracle学习(比较齐全的介绍)

    使用老式语法进行连接: ```sql SELECT * FROM table1, table2 WHERE table1.column_name = table2.column_name; ``` ##### 2. SQL99语法 使用现代语法进行连接: ```sql SELECT * FROM table1 JOIN table2 ON ...

    Windows.Internals.Part.1.7th.Edition

    - **内存分页**: 将内存划分为固定大小的页,通过页表来映射虚拟地址到物理地址,提供更细粒度的内存保护。 #### 四、其他重要概念 **4.1 文件系统** - **NTFS**: Windows系统常用的文件系统,支持大文件、压缩、...

    blog:BST博客

    保留此存储库中包含的所有照片,视频,散文和其他非代码内容的版权;未经事先书面许可,不得复制此类内容。 计划/待办事项: [功能]弄清楚如何自动生成缩略图或处理不同的图像尺寸 也可以考虑使侧边栏更像这个家伙...

    DOS高手速成DOS高手速成DOS高手速成

    可以加上参数如 `/w`(宽格式)或 `/p`(分页显示)来调整输出格式。 2. **CD**:改变当前目录。例如,`CD \` 返回根目录,`CD..` 返回上一级目录。 3. **MD** 和 **RD**:创建和删除目录。`MD` 创建新目录,`RD` ...

    AJAX高级程序设计.exe

    - JSONP(JSON with Padding)是一种老式的跨域解决方案,适用于不支持CORS的浏览器。 7. **Ajax安全** - 了解XSS(Cross-Site Scripting)和CSRF(Cross-Site Request Forgery)攻击,以及如何通过验证和编码...

    dropload_HTML5_CSS3源码_

    在Web开发中,这种效果通常用于无限滚动或分页加载更多内容,提升用户体验,特别是在内容丰富的网站或应用中。 【描述】"JQuery analog phone drop-down rolling load" 描述了这个效果是模拟老式电话拨号器的滚动...

Global site tag (gtag.js) - Google Analytics