access 没有自动增长列怎么分页
不好意思,我忘了说了,我用的是asp.net不会asp,我不想用控件自带的分页功能,我只要Access的sql语句,页面代码我也不需要,只要sql语句即可。...
不好意思,我忘了说了,我用的是asp.net不会asp,我不想用控件自带的分页功能,我只要Access的sql语句,页面代码我也不需要,只要sql语句即可。
展开
展开全部
原因很多.如果是远程数据库.可能是网速问题.如果是本地数据库.可以是SQL语句的问题..另外就是你使用的电脑问题.一千条数据在一个页面显示.内存要求还是很多的.至少512MB.看看SQL语是否能优化一下.
1.原理:ASP分页其实是将数据库中的记录分割成若干段“分屏显示”
,为什么叫“分屏显示”显示,因为其实显示的原始页面只有1页,通过控制数据库显示,来刷新页面的显示内容(可能一些朋友会误会为动态产生若干页面来显示,呵呵,我刚刚学的时候也是这样以为的)
2.用到的几个函数
rs.pagesize--->定义一页显示记录的条数
rs.recordcount--->统计记录总数
rs.pagecount---->统计总页数
这几个函数相信大家都很快就明白意识了,不过还有一个函数它的用法可能理解起来难一点
rs.absolutepage--->将数据库指针移动到当前页要显示的数据记录的第一条记录,比如有20条记录的一个数据库,我们分为10条记录显示一页,当你的页面为2时,通过使用rs.absolutepage将指针移动到第11条记录处,依次类推....
3.大家明白原理后我们开始来看一段分页的程序,其中的一些文件我就不一一详细讲解了,不明白的朋友可以先看
http://www.2yup.com/asp/forum/branch.asp?pid=55084&pn=5
--------------------------------------------------
<!--#include file=conn1.asp-->
<%
dim m,n
set rs=server.CreateObject("adodb.recordset")
sqlstr="select * from message order by time desc"
rs.open sqlstr,conn,3,3
rs.pagesize=10 '定义一页显示的记录数目
tatalrecord=rs.recordcount '获取记录总数目
tatalpages=rs.pagecount '获取分页的数目
rs.movefirst
----------------------------
nowpage=request("page") '用request获取当前页数,注意page是自己定义的变量并非函数
--------------------------
if nowpage&"x"="x" then '处理页码为空时的情况
nowpage=1
else
nowpage=cint(nowpage) '将页码转换成数字型
end if
--------------------------------
rs.absolutepage=nowpage '将指针移动到当前显示页的第一条记录
-------------------------------
%>
---------------------------------------------
<%
n=1
while not rs.eof and n<=rs.pagesize
response.Write(rs("user") & "<br>")
response.Write(rs("tt") & "<br>")
n=n+1
rs.movenext '显示页面的数据
wend
%>
-------------------------------------------
共:<%=tatalpages%>页 当前为:<%=nowpage%>页
<%if nowpage>1 then%>
<a href="fy.asp?page=<%=nowpage-1%>">上一页</a>
<%else%>
上一页
<%end if%>
<%for k=1 to tatalpages%>
<%if k<>nowpage then %>
<a href="fy.asp?page=<%=k%>"><%=k%></a>
<%else%>
<%=k%>
<%end if%>
<%next%>
<%if nowpage < tatalpages then%>
<a href="fy.asp?page=<%=nowpage+1%>">下一页</a>
<%else%>
下一页
<%end if%> '加上页码连接
<%if nowpage<>1 then%>
<a href="fy.asp?page=<%=1%>"> 首页</a>
<%else%>
首页
<%end if%>
<%if nowpage<>tatalpages then %>
<a href="fy.asp?page=<%=tatalpages%>">末页</a>
<%else%>
末页
还有就是:
<%on error resume next
set rs1=server.createobject("adodb.recordset")
sql="select * from cgal order by id desc"
rs1.open sql,Conn,1,1
if rs1.eof and rs.bof then
response.write"暂时没有内容"
err.clear
end if
rs1.pagesize=10
if request("pageno")<>"" then
pageno=cint(request("pageno"))
if pageno<1 then pageno=1
if pageno>rs1.pagecount then pageno=rs1.pagecount
else
pageno=1
end if
rs1.absolutepage=pageno
%>
<table width="640" border="0" cellpadding="0" cellspacing="0">
<tr> <td align="center" valign="top"><table width="95%" border="0" cellpadding="0" cellspacing="0" class="css004">
<tr>
<td><table width="100%" border="0" cellspacing="4" cellpadding="0">
<tr><%
for i=1 to rs1.pagesize
if rs1.bof or rs1.eof then exit for
%>
<td align="center"><a href="<%=rs1("link")%>" target="_blank"> ◆ <%=rs1("units")%></a></td>
<%
if i mod 7=0 then
response.Write("</tr><tr>")
end if
%><%
rs1.movenext()
Next
%>
</table>
<table width="100%" height="21" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="41%"><table width="100%" height="12" border="0" cellpadding="0" cellspacing="0">
<tr>
<td background="css/image1.gif"><img src="img/works/002.gif" width="17" height="10" /></td>
</tr>
</table></td>
<td width="59%"><div class="green-black">
<%pagenum=rs1.pagecount
pageno=1
if request.QueryString("pageno")<>"" then
pageno=cint(request.QueryString("pageno"))
end if
'显示数量设定
showpagenum=10
'上一页显示判断
if pageno>1 then
response.write "<span class=""disabled""> <a href='?pageno="&pageno-1&"'>< Prev</a></span> "
'response.end()
end if
if pagenum>showpagenum then
num_left=pageno-1
num_right=pagenum-pageno
if num_left>(showpagenum/2) then
if num_right<(showpagenum/2) then
page_left=pageno-(showpagenum-num_right)+1
page_right=pagenum
else
page_left=pageno-(showpagenum/2)
page_right=pageno+(showpagenum/2)
end if
else
page_left=1
page_right=pageno+(showpagenum-num_left)-1
end if
'前项输出
for P=page_left to pageno-1
response.write " <a href='?pageno="&p&"'>"&p&"</a> "
next
'当前项输出
response.write " <span class=""current"">"&pageno&"</span> "
'后项输出
for f=pageno+1 to page_right
response.write " <a href='?pageno="&f&"'>"&f&"</a> "
next
else
for i=1 to pagenum
if i=pageno then
response.write " <span class=""current"">"&i&"</span> "
'response.end()
else
response.write " <a href='?pageno="&i&"'>"&i&"</a> "
'response.end()
end if
next
end if
'最后一页判断
if pageno<pagenum then
response.write " <a href='?pageno="&pageno+1&"'>Next > </a> "
'response.end()
end if%></div></td>
</tr>
</table></td>
</tr>
</table>
</td>
</tr>
</table>
自己修改代码内的数据库名和字段就OK了
1.原理:ASP分页其实是将数据库中的记录分割成若干段“分屏显示”
,为什么叫“分屏显示”显示,因为其实显示的原始页面只有1页,通过控制数据库显示,来刷新页面的显示内容(可能一些朋友会误会为动态产生若干页面来显示,呵呵,我刚刚学的时候也是这样以为的)
2.用到的几个函数
rs.pagesize--->定义一页显示记录的条数
rs.recordcount--->统计记录总数
rs.pagecount---->统计总页数
这几个函数相信大家都很快就明白意识了,不过还有一个函数它的用法可能理解起来难一点
rs.absolutepage--->将数据库指针移动到当前页要显示的数据记录的第一条记录,比如有20条记录的一个数据库,我们分为10条记录显示一页,当你的页面为2时,通过使用rs.absolutepage将指针移动到第11条记录处,依次类推....
3.大家明白原理后我们开始来看一段分页的程序,其中的一些文件我就不一一详细讲解了,不明白的朋友可以先看
http://www.2yup.com/asp/forum/branch.asp?pid=55084&pn=5
--------------------------------------------------
<!--#include file=conn1.asp-->
<%
dim m,n
set rs=server.CreateObject("adodb.recordset")
sqlstr="select * from message order by time desc"
rs.open sqlstr,conn,3,3
rs.pagesize=10 '定义一页显示的记录数目
tatalrecord=rs.recordcount '获取记录总数目
tatalpages=rs.pagecount '获取分页的数目
rs.movefirst
----------------------------
nowpage=request("page") '用request获取当前页数,注意page是自己定义的变量并非函数
--------------------------
if nowpage&"x"="x" then '处理页码为空时的情况
nowpage=1
else
nowpage=cint(nowpage) '将页码转换成数字型
end if
--------------------------------
rs.absolutepage=nowpage '将指针移动到当前显示页的第一条记录
-------------------------------
%>
---------------------------------------------
<%
n=1
while not rs.eof and n<=rs.pagesize
response.Write(rs("user") & "<br>")
response.Write(rs("tt") & "<br>")
n=n+1
rs.movenext '显示页面的数据
wend
%>
-------------------------------------------
共:<%=tatalpages%>页 当前为:<%=nowpage%>页
<%if nowpage>1 then%>
<a href="fy.asp?page=<%=nowpage-1%>">上一页</a>
<%else%>
上一页
<%end if%>
<%for k=1 to tatalpages%>
<%if k<>nowpage then %>
<a href="fy.asp?page=<%=k%>"><%=k%></a>
<%else%>
<%=k%>
<%end if%>
<%next%>
<%if nowpage < tatalpages then%>
<a href="fy.asp?page=<%=nowpage+1%>">下一页</a>
<%else%>
下一页
<%end if%> '加上页码连接
<%if nowpage<>1 then%>
<a href="fy.asp?page=<%=1%>"> 首页</a>
<%else%>
首页
<%end if%>
<%if nowpage<>tatalpages then %>
<a href="fy.asp?page=<%=tatalpages%>">末页</a>
<%else%>
末页
还有就是:
<%on error resume next
set rs1=server.createobject("adodb.recordset")
sql="select * from cgal order by id desc"
rs1.open sql,Conn,1,1
if rs1.eof and rs.bof then
response.write"暂时没有内容"
err.clear
end if
rs1.pagesize=10
if request("pageno")<>"" then
pageno=cint(request("pageno"))
if pageno<1 then pageno=1
if pageno>rs1.pagecount then pageno=rs1.pagecount
else
pageno=1
end if
rs1.absolutepage=pageno
%>
<table width="640" border="0" cellpadding="0" cellspacing="0">
<tr> <td align="center" valign="top"><table width="95%" border="0" cellpadding="0" cellspacing="0" class="css004">
<tr>
<td><table width="100%" border="0" cellspacing="4" cellpadding="0">
<tr><%
for i=1 to rs1.pagesize
if rs1.bof or rs1.eof then exit for
%>
<td align="center"><a href="<%=rs1("link")%>" target="_blank"> ◆ <%=rs1("units")%></a></td>
<%
if i mod 7=0 then
response.Write("</tr><tr>")
end if
%><%
rs1.movenext()
Next
%>
</table>
<table width="100%" height="21" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="41%"><table width="100%" height="12" border="0" cellpadding="0" cellspacing="0">
<tr>
<td background="css/image1.gif"><img src="img/works/002.gif" width="17" height="10" /></td>
</tr>
</table></td>
<td width="59%"><div class="green-black">
<%pagenum=rs1.pagecount
pageno=1
if request.QueryString("pageno")<>"" then
pageno=cint(request.QueryString("pageno"))
end if
'显示数量设定
showpagenum=10
'上一页显示判断
if pageno>1 then
response.write "<span class=""disabled""> <a href='?pageno="&pageno-1&"'>< Prev</a></span> "
'response.end()
end if
if pagenum>showpagenum then
num_left=pageno-1
num_right=pagenum-pageno
if num_left>(showpagenum/2) then
if num_right<(showpagenum/2) then
page_left=pageno-(showpagenum-num_right)+1
page_right=pagenum
else
page_left=pageno-(showpagenum/2)
page_right=pageno+(showpagenum/2)
end if
else
page_left=1
page_right=pageno+(showpagenum-num_left)-1
end if
'前项输出
for P=page_left to pageno-1
response.write " <a href='?pageno="&p&"'>"&p&"</a> "
next
'当前项输出
response.write " <span class=""current"">"&pageno&"</span> "
'后项输出
for f=pageno+1 to page_right
response.write " <a href='?pageno="&f&"'>"&f&"</a> "
next
else
for i=1 to pagenum
if i=pageno then
response.write " <span class=""current"">"&i&"</span> "
'response.end()
else
response.write " <a href='?pageno="&i&"'>"&i&"</a> "
'response.end()
end if
next
end if
'最后一页判断
if pageno<pagenum then
response.write " <a href='?pageno="&pageno+1&"'>Next > </a> "
'response.end()
end if%></div></td>
</tr>
</table></td>
</tr>
</table>
</td>
</tr>
</table>
自己修改代码内的数据库名和字段就OK了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
TableDI
2024-07-18 广告
2024-07-18 广告
VLOOKUP函数在Excel中主要用于垂直查找数据,但无法直接一次性匹配多行数据。若要实现这一功能,可以采取以下方法:1. 使用辅助列和数组公式,通过IF函数结合TE电商平台TJOIN函数将多个匹配值合并到一个单元格中。2. 利用VLOO...
点击进入详情页
本回答由TableDI提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询