显示ADO.NET分页填充技术

   如果数据不经常变动,可以在DataSet中本地维护一个记录缓存,以此提高性能。例如,可以在本地DataSet中存储10页有用的数据,并且只有当用户浏览超出缓存第一页和最后一页时,才从数据源中查询新数据。

  1) ADO.NET分页避免使用带有startRecord和maxRecords值的DataAdapter.Fill重载。当以这种方式填充DataSet时,ADO.NET分页只有maxRecords参数(从startRecord参数标识的记录开始)指定的记录数量用于填充DataSet,但无论如何总是返回完整的查询。这就会引起不必要的处理,用于读取“不需要的”记录;而且为了返回附加记录,会耗尽不必要的服务器资源。

  2) 用于每次只返回一页记录的技术是创建SQL语句,将WHERE子句以及ORDER BY子句和TOP谓词组合起来。ADO.NET分页此技术取决于存在一种可唯一标识每一行的办法。当浏览下一页记录时,修改WHERE子句使之包含所有唯一标识符大于当前页最后一个唯一标识符的记录。

  当浏览上一页记录时,修改WHERE子句使之返回所有唯一标识符小于当前页第一个唯一标识符的记录。两种查询都只返回记录的TOP页。当浏览上一页时,需要以降序为结果排序。这将有效地返回查询的ADO.NET分页最后一页(如果需要,显示之前也许要重新排序结果)。

  3) 另一项每次只返回一页记录的技术是创建SQL语句,将TOP谓词和嵌入式SELECT语句的使用结合在一起。此技术并不依赖于存在一种可唯一标识每一行的办法。使用这项技术的第一步是将所需页的数量与页大小相乘。

  然后将结果传递给SQL Query的TOP谓词,该查询以升序排列。再将此查询嵌入到另一个查询中,ADO.NET分页后者从降序排列的嵌入式查询结果中选择TOP页大小。实质上,返回的是嵌入式查询的最后一页。例如,要返回查询结果的第三页(页大小是10),应该书写如下所示的命令:

  SELECT TOP 10 * FROM (SELECT TOP 30 * FROM Customers ORDER BY Id ASC) AS Table1 ORDER BY Id DESC 注意:从查询中返回的结果页以降序显示。ADO.NET分页如果需要,应该重新排序。

时间: 2024-11-18 09:51:27

显示ADO.NET分页填充技术的相关文章

ADO.NET数据库访问技术_数据库其它

一. ADO.NET的定义 ADO.NET来源于COM组件库ADO(即ActiveX Data Objects),是微软公司新一代.NET数据库的访问模型,是目前数据库程序设计人员用来开发基于.NET的数据库应用程序的主要接口.它利用.NET Data Provider(数据提供程序)进行数据库的连接和访问,通过ADO.NET数据库程序能够使用各种对象来访问符合条件的数据库内容,让提供数据库管理系统的各个厂商可以根据此标准开放对应的.NET Data Provider,这样设计数据库应用程序人员

firebug调js的问题-为什么firebug只能显示部分js,有些技术则被“拆”成了好几部分(并分别命名)显示

问题描述 为什么firebug只能显示部分js,有些技术则被"拆"成了好几部分(并分别命名)显示 在用firebug调js一段时间后,总觉得不能理解这个插件的使用规律,在"所有js"中有时能看到自己想要调的js文件,而很多时候看不到.后来发现要找的js被"分隔"成很多份分别命名为 如:abc[1],abc[2], abc[3],加断点的时候发现不能正常的加上去(正常是点一下代码左边就会有一个暗红色的点出现),而现在却出现一个"正在加载&

研究显示41%企业使用加密技术 增幅达10年来最高

据CSO报道,专注于数据保护.隐私泄露和网络安全方面的研究机构Ponemon Institute发布最新报告显示,使用加密技术的企业数量正大幅增加,过去10年间去年涨幅达到最高水平. 这项报告是全球领先的数据保护解决方案提供商Thales e-Security赞助的,该公司安全战略高级主管约翰·克里姆(John Grimm)说,加密技术的开支在IT部门安全总预算中所占比重却在下降. 报告显示,Ponemon Institute2005年首次发布报告时,只有16%的企业广泛使用加密技术.经过10年

如何分页显示ADO 存取数据库

ado|分页|数据|数据库|显示 作者: 书生 什么是 ADO 存取数据库时的分页显示?如果你使用过目前众多网站上的电子公告板程序的话,那你应该会知道电子公告板程序为了提高页面的读取速度,一般不会将所有的帖子全部在一页中罗列出来,而是将其分成多页显示,每页显示一定数目的帖子数,譬如 20 条.想不想了解如何实现分页显示?请看本文! <动态网站设计十八般武艺 --ASP 篇>一文从第一期至今已和朋友们一起度过了大半个年头,相信通过在这一段时间中的学习.实践到再学习.再实践,大家已经能够熟练运用

jqgrid 显示问题-jqGrid 分页查询后,有一个层把我的页面遮罩了,请问是什么问题

问题描述 jqGrid 分页查询后,有一个层把我的页面遮罩了,请问是什么问题 解决方案 设置背景色为白色 解决方案二: 你早上那个问题解决了.你上面那个问题一般得调css ,你说下面没有遮罩,有2种可能 要么是层的高度 要么是z-index 问题 .看看http://www.w3school.com.cn/cssref/pr_pos_z-index.asp 解决方案三: jqgrid的层还是你自己显示的?自己的调整层z-index.jqgrid的你不想要可以配置loadui为disable禁用j

调查显示早期用户对云计算技术失望

新浪科技讯 北京时间10月4日晚间消息,赛门铁克周二发布的一项调查结果显示,目前并没有太多企业等组织使用云计算技术,而已使用云计算技术的企业等组织大部分对云计算带来的效果感到失望. 调查显示,目前只有不到1/5的企业等组织将应用主机外包给云计算服务提供商.而2/3的被调查对象表示,目前正处于讨论的初期,或正在试验中,或是并不考虑转向云计算. 许多企业希望亚马逊.微软.Salesforce.谷歌和Rackspace等云计算服务提供商能帮助 它们扩大规模,同时不必在本地安装昂贵的硬件和软件. 研究公

ADO.net 2.0技术内幕第十三章中提到的BLOB应用程序示例哪可以找到

问题描述 ADO.net2.0技术内幕第十三章中提到的BLOB应用程序示例哪可以找到?在MS网站上下载的源码压缩包里找不到这个东东?

我又来提问了,如何实现在SSH框架中前台显示结果可以分页的?

问题描述 最近一直在提问,麻烦各位大大了现在可以实现将搜索结果全部显示在页面中了我想再加一个分页的功能,下面是查询的主函数@RequestMapping("query.do")public String queryList(TechResult techResult,Model model)throws Exception{List<TechResult> techresultList=service.queryTechResultForList(techResult);i

教你让Excel里面人名显示更美观地灵活技术

开学后,在按年级整理各班以电子形式上报的Excel学生花名册时,我发现其存在一些问题,班主任报来的学生姓名用字中有空格,而且空格的位置不确定,空格的数量也不确定,这使姓名这列数据很不整齐.不协调.若要一个一个地进行调整,那可费时费力了.怎样才能解决姓名中空格的问题呢?经过多次尝试,我最终找到了答案. 一.删除姓名中的空格 删除姓名中的空格有两种方法: 方法一:替换法.选中姓名所在的A列,执行"编辑→替换"命令,在"查找内容"栏中输入一个空格,在"替换为&q