首页 > 语言 > 关键词 > asp最新资讯 > 正文

ASP教程:不连数据库进行查询分页的思路

2008-07-02 10:10 · 稿源:互联网

看了不少介绍,知道set rs=conn.execute(sql)的执行效率比rs.open sql,conn,1,1要高很多,但是set rs=conn.execute(sql)这种执行方式也有很多不足,首先它不具有分页属性,比如rs.pagesize,rs,absolutepage等属性,这样的话,通过这种方式set rs=conn.execute(sql)执行的速度虽然快了,但是却不能按普通方式进行分页,怎么办呢??

  第二天,查了一下网上的资料,突然想到是否可以把所需数据提到一个数组里,然后对数组进行分页呢?首先把set rs=conn.execute(sql)查询出来的结果通过rs.getrows()取出来附给一个数组,于是我就在各网站上找分页的帖子,虽然发现不少高效率分页的帖子(包括存储过程等),可结果发现全都是需要通过SQL执行的,即翻页的时候也需要执行SQL语句,此时头都晕了,优化的也只是SQL语句,此时实在没办法,只好自己努力了!终于完成了一个数组分页的粗稿,代码不是很完善,让大家一起来研究一下!代码如下:
首先有一个index.asp查询页:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>

<body><FORM id="SearchForm" name="SearchForm" method="post" action="search.asp?act=cha">
<div class=input>
<input id=keyword onmouseover=this.focus() title="快速搜索您的留言记录" onfocus=this.select() class="in"  maxlength=35 name=keyword />
<select style="width:120px;margin-top:-25px" name="ChannelID">
<option value="k2">留言人</option>
<option value="k1">留言内容</option>
</select>
  <Input id=search_btn type=submit value="查询">
</div>
</FORM>
</body>
</html>
search.asp的代码:

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body>
<%
If request.querystring("act")="cha" Then
search_type=request.FORM("ChannelID")
keywords=request.form("keyword")
if search_type="k1" then '按照留言内容搜索
sql="select * from gbook_rec where g_content like '%"&keywords&"%'"
ElseIf search_type="k2" then
'if search_type="k2" then '按照留言人搜索
sql="select * from gbook_rec where g_name like '%"&keywords&"%'"
Else
response.end
end If
Set rs=conn.execute(sql)
If  rs.eof And rs.bof Then
%>
<div class="search">没有查找到您要的记录!</div>
<%
response.End
Else
aResults=rs.getrows()'取出数据放入数组ROW中
application("data")=aResults
Set rs=nothing
conn.close '关闭数据库
End IF
End If

aResults=application("data")
Dim i,row,pagesize,epage,numb,pagecount,fenye
numb=UBound(aResults,2)+1 '总记录行数
pagesize=2 '每页条数

If numb Mod pagesize = 0 Then '判断总页数
pagecount=Int(numb/pagesize)
Else
pagecount=Int(numb/pagesize)+1
End If

epage=request.querystring("page")

If epage="" Then epage=1    

For i=(epage-1)*pagesize To epage*pagesize-1
If i>UBound(aResults,2) Or i<0 Then Exit for
%>
<div class="content">
<ul><li>记录<%=i+1%></li>
  <li>留言人:<%=aResults(1,i)%></li>
  <li>内容:<%=aResults(2,i)%></li>
  <li>时间:<%=aResults(3,i)%></li>
  <li>IP:<%=aResults(5,i)%></li>
</ul>
</div>
<%
Next
If numb>pagesize Then
fenye="<a href=search.asp?page=1>首页</a>  "
fenye=fenye&"<a href=search.asp?page="&epage-1&" title="&epage-1&">前页</a>  "
fenye=fenye&"<a href=search.asp?page="&epage+1&" title="&epage+1&">后页</a>  "
fenye=fenye&"<a href=search.asp?page="&pagecount&">末页</a>  "
fenye=fenye&"<BR>"
fenye=fenye&"总页数"&pagecount&",当前页"&epage&",总记录为:"&numb
response.write fenye
End if
%>
</body>
</html>

总结:本人认为以上代码除了初次查询需要连接到数据库外,其他时间都不需要连接数据库,对于大型数据查询或连接人数比较多的时候对资源节省还是很有用处理的!另外将查询数组保存在application对象上,还可以根据application( "data")("username")来判断某人查询过什么,不过此代码为初次模型,还有待今后大家一起努力改进!希望大家都顶力关注支持,谢谢!

测试代码下载

  • 相关推荐
  • 大家在看
  • 华为开源数据库能力 开放openGauss数据库源代码

    今日,华为正式宣布开源数据库能力,开放openGauss数据库源代码,并成立openGauss开源社区,社区官网(opengauss.org)同步上线。

  • 关于数据库的高可用高可靠,华为RDS有话说

    不知从何时起,“6·18”成为了“购物节”,这种全民狂欢式购物对电商行业是一个巨大挑战。 618 大促毫秒必争,短时间的高并发会给数据库带来巨大压力。面对暴涨的业务、暴增的订单,企业该如何确保数据库稳定性和可靠性呢?不要担心,华为云数据库的这份应对策略,时刻为您保驾护航。对于数据库来说,可用性和可靠性是永恒的话题。数据库管理员会按照业务的不同要求选择不同的策略保证系统正常运作,其中包含数据库本身内核提供的?

  • 蚂蚁集团自研数据库业务OceanBase独立 胡晓明任董事长

    今日,蚂蚁集团宣布将原有自研数据库产品OceanBase独立,成立由蚂蚁100%控股的数据库公司北京奥星贝斯科技,蚂蚁集团CEO胡晓明亲自担任董事长。

  • “投资数据库”百家号有什么作用?企业品牌必须知道的推广渠道

    备注:本文数据来自站长之家移动传媒平台,文章涉及的数据依托平台大数据计算所得,非百度官方数据,仅供参考。投资数据库是当前百家号中的普通号,目前账号百家号权重为2,综合排名位列779805名,财经分类排名位列18487名,领先了30.2%的百家号。 投资数据库百家号概况 投资数据库的简介为致力于最专业的投资数据服务,是一家主旨明确、领域专注的自媒体作者,截止目前为止他们已经在百家号上发布了超过23篇的游戏内容,最近该作?

  • 黑客勒索2.3万个MongoDB数据库 要求支付比特币赎金

    黑客已经在 22900 个MongoDB数据库上上传了勒索赎金记录,这些数据库在没有密码的情况下在线暴露,这个数字大约占所有MongoDB在线访问数据库的47%。

  • 数据库业务OceanBase升格为独立公司 蚂蚁集团CEO胡晓明任董事长

    【TechWeb】6月8日消息,蚂蚁集团今天 对外宣布,将自研数据库产品OceanBase独立进行公司化运作,成立由蚂蚁100%控股的数据库公司北京奥星贝斯科技,并由蚂蚁集团CEO胡晓明亲自担任董事长。据了解,新公司将在今年内发布重大版本升级,并计划在未来三年内服务全球超过万家企业客户。对OceanBase独立公司化运作一事,蚂蚁集团表示,“科技是蚂蚁集团的基因,也是蚂蚁集团重要战略方向。经过十年的发展,OceanBase支撑了支付宝、网?

  • 阿里云发布六大新品:第七代ECS、PolarDB-X数据库等重磅登场

    【TechWeb】6月9日消息,在2020阿里云峰会上,阿里云宣布推出第七代ECS、POLARDB-X数据库、视觉智能开放平台等重磅新品。此外,阿里云还发布了新一代数据中台、混合云管理平台、云原生数据仓库等产品及解决方案,目前这些产品均已在阿里云官网上线。第七代ECS高主频实例基于阿里云自研的神龙服务器架构,第七代阿里云ECS的算力比上一代提升了160%,最大支持192个vCPU,吞吐能力提升了一倍,并在存储转发能力、延时、稳定性上有了?

  • 微信寄快递方法教程 微信寄快递单号查询

    微信于 6 月 1 日上线了「微信寄快递」小程序,定位快递寄件服务平台。在微信搜索栏搜索「微信寄快递」即可进入该小程序,共设快递查询、寄快递、个人订单跟踪及所关注快递三个功能性模块。那么微信寄快递没有看到单号怎么办?以下是关于微信寄快递的详细介绍。

  • 苹果iPhoneApp资源库怎么用 iOS14App资源库使用方法

    苹果在iOS14系统中加入了App资源库的功能,这个功能就是将相同类型的应用添加到同一个组合当中,便于用户快速找到对应的程序应用,这里我们来一起看下App资源库具体的使用方法。

  • MySQL统计库表大小都是多少

    统计每个库每个表的大小是数据治理的其中最简单的一个要求,本文将从抽样统计结果及精确统计结果两方面来统计MySQL的每个库每个表的数据量情况。

  • 苹果App资源库怎么调整应用位置

    苹果App资源库里的应用程序要怎么调整应用APP的位置,需要进行怎样的操作才可以调整这些应用位置呢,以下我们来一起看下具体的位置调整方法。

  • 设计没灵感?使用免费的Billfish搭建个人灵感库试试

    设计师是一个“创意”至上的职业,很多设计公司的核心理念就是“无创意,不设计”,折射出的是设计师对创意,对创新的极致追求。然而,有很多设计师苦于自己的创意“贫乏”,在工作中苦苦的挣扎。我们经常在提倡创新,但其实内心最清楚,我们设计的很多作品只是在沿用以前的设计思维,特别是一些产量和产值为中心的设计公司。面对如此的市场环境,个人设计师如何快速的找到灵感,常用的方式便是借鉴于各大平台网站,久而久之很难形

  • 支付宝升级“疫情服务直通车”服务 新增“疫情等级查询”功能

    DoNews6月19日消息(记者 翟继茹)19日,支付宝宣布升级“疫情服务直通车”服务,新增各地疫情等级查询、核酸检测机构查询、核酸检测结果查询等服务。支付宝介绍,目前该服务可支持全国超300多城市的用户查询。新增的“查疫情等级”,背后连接“国家政务服务平台”,信息来自国家卫生健康委提供的各地疫情风险等级,用户输入地址信息即可一键查询地区疫情风险等级,其中北京市可精准查询街道最新风险等级。在核酸检测方面,可查询?

  • 小影携手陀螺开启“库布齐沙漠星球节”

    专注移动端视频创作工具与服务的小影科技,宣布携手旅行平台陀螺,以及智云稳定器等品牌,共同开启“库布齐沙漠星球节”,小影将招募旅游类视频达人,深入内蒙古地区开启一场沙漠星空拍摄之旅。 近年来,旅游类达人在短视频领域的影响力逐年递增,根据QuestMobile发布的《泛娱乐用户行为新趋势》调研报告显示, 00 后、 90 后泛娱乐用户喜欢观看的短视频内容中,旅游类内容占比高达36.8%。 更值得关注的是,旅游类达人产出的视频?

  • 华为应用市场开放归因查询接口,助力提升应用推广效率

    近日,华为应用市场通过AppGallery Connect向开发者及合作归因平台开放移动应用归因查询接口,帮助开发者实现精准营销,提升推广效率。通过该归因查询接口,开发者可以获取其上架应用的自定义归因参数,包括来自第三方的下载来源、下载量、安装量及下载安装时间等数据。与合作归因平台合作的开发者,还可以通过归因SDK,获取更加精准的归因分析信息。目前,华为应用市场已经和AppsFlyer、Adjust等全球归因平台建立了合作关系。合作

  • 中国电影:进口影片的上映计划暂未确定 待国内影院恢复营业后再查询

    据证券时报报道,今日,中国电影在互动平台表示,因全球防控情况,进口影片的上映计划暂未确定,具体情况可待国内影院恢复营业后再查询。

  • 多地养老金迎来新调整是怎么回事?养老金网上查询方法

    据中新网消息,今年政府工作报告指出,上调退休人员基本养老金,提高城乡居民基础养老金最低标准。养老保险是社会保障制度的重要组成部分,是养老、医疗、失业、生育和工伤保险五大险种中最重要的险种之一。

  • 苹果手机App资源库怎么排列

    苹果iPhone手机的App资源库是iOS14上新增的一项国内,这个功能是系统帮助用户自动排布已经安装在手机上的应用程序,但是用户自己可以排列应用程序吗,我们来一起看下。

  • 重磅!快手自建商品分销库 对接品牌不再是大主播特权

    据了解,快手联盟项目大概于今年 5 月下旬正式上线,但官方层面暂未开启大规模招商活动。据一位快手服务商表示,目前平台对入驻品牌商的审核要求还比较严格,通常是直接找品牌商谈合作,不考虑品牌代理商等中间商渠道。

  • 学信网回应查学历需输入毕业院校:人工审核身份证也可查询

    今日,针对“查学历需输入毕业院校”一事,学信网发布声明再次回应称:“根据广大用户要求和网络安全管理部门建议,2019年5月,为进一步加强数据安全和个人隐私保护,防止有人仅通过姓名和身份证号恶意盗用他人身份注册学信网账户,我们对信息查询安全机制进行了升级,非实人验证用户首次或长期未访问系统时需输入身份证号码、院校名称等才能查询本人学籍学历信息。”

  • 参与评论
文明上网理性发言,请遵守新闻评论服务协议