如何在asp中通过getrows实现数据库记录分页??

lio_sy 2003-10-15 01:30:14
RT
...全文
56 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
lions911 2003-10-15
  • 打赏
  • 举报
回复
给你一段代码看看:

<%@ Language = VBSCRIPT %>
<% Option Explicit %>
<%
rem 在asp中通过getrows实现数据库记录分页的一段代码
Dim iStart, iOffset
iStart = Request("Start")
iOffset = Request("Offset")

if Not IsNumeric(iStart) or Len(iStart) = 0 then
iStart = 0
else
iStart = CInt(iStart)
end if

if Not IsNumeric(iOffset) or Len(iOffset) = 0 then
iOffset = 30
else
iOffset = Cint(iOffset)
end if

Response.Write "Viewing " & iOffset & " records starting at record " & iStart & "<BR>"

Dim objConn, objRS
Set objConn = Server.CreateObject("ADODB.Connection")
'objConn.Open "DSN=MP3"
dim connstr
dim db
db="csnjimageman.mdb"
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(""&db&"")
objconn.Open connstr

Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.Open "SELECT * FROM imageinfo", objConn

Dim aResults
aResults = objRS.GetRows

objRS.Close
Set objRS = Nothing

objConn.Close
Set objConn = Nothing


Dim iRows, iCols, iRowLoop, iColLoop, iStop
iRows = UBound(aResults, 2)
iCols = UBound(aResults, 1)

If iRows > (iOffset + iStart) Then
iStop = iOffset + iStart - 1
Else
iStop = iRows
End If

For iRowLoop = iStart to iStop
For iColLoop = 0 to iCols
Response.Write aResults(iColLoop, iRowLoop) & " "
Next
Response.Write "<BR>"
Next

Response.Write "<P>"
if iStart > 0 then
'Show Prev link
Response.Write "<A HREF=""GetRows.asp?Start=" & iStart-iOffset & _
"&Offset=" & iOffset & """>Previous " & iOffset & "</A>"
end if

if iStop < iRows then
'Show Next link
Response.Write " <A HREF=""GetRows.asp?Start=" & iStart+iOffset & _
"&Offset=" & iOffset & """>Next " & iOffset & "</A>"
end if
%>

原创ASP框架:CVASP框架 201204C 发布!ASP依然可以那么优雅!   基本信息: 版本编号:201204C 核心字节:51700 核心文件:cvcorem.asp 英文名称:CVASP -- Controller View for ASP Framework 文名称:CVASP框架 程序语言:VBScript 字符编码:GB2312, GBK, UTF-8   功能简介: 简便:   常用函数和类采用精简命名,书写代码更少。   提供几个下划线的代码生成工具:     _convutf8.asp   --用于转换文为UTF编码用于AJAX     _mkcvatpl.asp   --用于生成编程时用的代码书写模板     _viewsrc.asp    --用于查看cvcore.asp的源代码注释     具体效果用IIS管理器运行一下就知道了。   数据库类提供原生ADODB的rs和conn对象实例给外部使用,     熟悉ADO的可不影响之前使用习惯。   提供常用的功能函数以及省心省力的类:     模板类、数据库类、分页类、字符串拼接类等 灵活:   核心代码库可以单独INCLUDE出来使用。   例如: 安全:   Cookie类使用乱序的Base64编码,可预防Cookie欺骗。   使用reqF和reqS函数封装了Request.Form和Request.QueryString,可预防SQL注入。   提供简洁有效的表单验证的系列函数: vcnull, vclen, vcsize, vcnum, vcdate 快速:   提供高性能的单层区块模板类,可结合缓存类一起使用。   提供高性能的字符串拼接类,例如 dim sc : set sc=new clsStrCat   提供数据库类支持GetRows格式二维数组的数据库读取操作 整洁:   提供模板类使得ASP(VBS)服务器代码与HTML界面代码分离。   核心仅提供常用且精炼的功能函数和类,扩展功能(HELPER)要用时才自己INCLUDE。 为什么ASP只有Controller和View而没有Model呢? VBScript本身不支持类的继承,无法实现真正的MVC(不必要钻牛角尖了!)。 开源使用声明:   您必需保留源代码里类似以下的LOGO注释   并且保留 cvinfo.asp 说明文件在目录   (若顾虑安全性 cvinc 目录名可以更改)
网贴论坛,小巧高速,安装方便、通用界面、容易上手,XHTML+CSS架构,独创分库存贴技术,打造个性化精良 1、VTBBS使用缓存技术,论坛配置、版面和主要共享信息全面写入Application。   VTBBS的Application大约占用内存1KB~5KB左右,使用它可以减少数据库读取次数,很大程度地缓解服务器压力。首页几乎无需读取数据库即可显示,帖子列表和帖子显示页面也只查询了一次数据库,并采用分页类,很大程度提高论坛运行速度。 2、独创分库存贴技术。   目前的ASP论坛,采用分表存贴技术,即在ACCESS数据库用多个数据表保存帖子内容,这样,可以加快数据库查询速度,提高论坛性能。但另一个问题还是没有解决,因为不论你建立多少个数据表,始终在一个数据库之内,随着帖子的增多,数据库还是不断膨胀增长,有的几十MB,甚至达到几百MB。   VTBBS采用分库存贴,即帖子内容保存在其它一个或多个数据库,这样,主数据库就会很小,膨胀增长速度会很慢,论坛运行速度和整体性能会有很大程度地提高,再也不用为大个头ACCESS数据库发愁了。 3、采用ASP类。   ASP类的运行使VTBBS更加模块化,相应提高运行速度。VTBBS有主类、缓存类和分页类等。GETROWS、GETSTRING的运用,使VTBBS运行速度再次提升。 4、XHTML+CSS架构。   VTBBS采用XHTML+CSS架构,对于XHTML+CSS,其优点可在本站查看,它对网页执行速度很有帮助。而VTBBS更是灵活运行XHTML+CSS,页面的布局和皮肤均是用她制作而成。可能你会认为,不用表格的布局,和只用CSS的皮肤能有什么好看,肯定很死板,在你这样认为之前,请先查看演示站点,她一样给你带来视觉的震撼和不可思议效果,只要你够想像力,一样可以创造出漂亮的皮肤风格,而制作风格是很简单的,本站教程,一看即会。

10,606

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 其他
社区管理员
  • 其他
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧