当记录达到100万条以上时分页处理遇到的问题,请高手解答!

时间:2022-09-03 14:54:41
我有一表,记录达到100万条以下,在分页处理时速度也很慢,请高手帮忙,如何提高分页显示的速度!分不够可以再加!

19 个解决方案

#1


打错了,100条以上

#2


100条分页很慢?
呵。。。你的代码拿出来看看

#3



   不会的,才一百多条嘛,除非电脑很垃圾,

  用SQL server 没问题,

#4


找一找用存储过程分页的。应该会快一点,在论坛上看到,忘了在哪了:)

#5


<%
       pgno=request("pageno")
   if pgno="" or pgno<0 then pgno=1
   response.Cookies("onepage1")=15
    
      set rs=server.createobject("adodb.recordset")
      sql="select * from  Article order by id desc "   
      rs.open sql,conn,1,3 
  
  if rs.eof then 
    response.Write "<center><font color=ff000>"
    response.Write "对不起,无信息"
response.Write "</font></center>"
response.End
      end if
   rs.movefirst
   
   rs.pagesize=request.Cookies("onepage1")
   maxpage=rs.pagecount
   
   if rs.recordcount>0 then
      rs.movefirst
  rs.absolutepage=cint(pgno)
end if

   preno=pgno-1
   postno=pgno+1
 

%>
<table width="778" height="344" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF">
  <tr>
    <td valign="top"><br>
      <table width="88%" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#7A9DDE">
        <tr> 
          <td width="8%"><div align="center"><strong><font color="#FFFFFF">记录号</font></strong></div></td>
          <td width="46%"><div align="center"><strong><font color="#FFFFFF">标题</font></strong></div></td>
          <td width="19%"><p><strong><font color="#FFFFFF">发布时间</font></strong></p></td>
          <td width="13%"><strong><font color="#FFFFFF">点击数</font></strong></td>
          <td width="14%"><strong><font color="#FFFFFF">发部者</font></strong></td>
        </tr>
      </table>
      <table width="88%" border="0" align="center" cellpadding="0" cellspacing="0">
        <%j=0
      i=0
    do while not rs.eof and j<rs.pagesize
      recno=(pgno-1)*rs.pagesize+1
       i=i+1
     if i mod 2<>0 then  
  %>
        <tr bgcolor="#F8FEFD"> 
          <td width="8%"> 
            <div align="center"><font color="#FF0000"><%=(i+(pgno-1)*15) %></font></div></td>
          <td width="46%" height="20"><a href='Article_show.asp?id=<%=rs("id")%>' target="_blank" title='查看  <%=rs("qybt")%>'><%=rs("qybt")%><%if rs("fj")<>"" then response.Write "<font color=ff0000>"&"[附件]"&"</font>"%></a><% if rs("fbdate")=date then response.Write "<img src='images/new2.gif' width='19' height='7'>"%>
          </td>
          <td width="19%"> 
            <%response.Write rs("fbdate")&"&nbsp;"&(rs("fbtime"))%></td>
          <td width="13%"><font color="#FF0000"><%=rs("cs")%></font></td>
          <td width="14%"><%=rs("fjr")%></td>
        </tr>
        <%else%>
        <tr bgcolor="#F0F0FF"> 
          <td> 
            <div align="center"><font color="#FF0000"><%=(i+(pgno-1)*15) %></font></div></td>
          <td height="20"><a href='Article_show.asp?id=<%=rs("id")%>' target="_blank" title='查看  <%=rs("qybt")%>'><%=rs("qybt")%></a><a href='Article_show.asp?id=<%=rs("id")%>' target="_blank" title='查看  <%=rs("qybt")%>'><%if rs("fj")<>"" then response.Write "<font color=ff0000>"&"[附件]"&"</font>"%></a><% if rs("fbdate")=date then response.Write "<img src='images/new2.gif' width='19' height='7'>"%>
          </td>
          <td height="20"> 
            <%response.Write rs("fbdate")&"&nbsp;"&(rs("fbtime"))%>
          </td>
          <td><font color="#FF0000"><%=rs("cs")%></font></td>
          <td><%=rs("fjr")%></td>
        </tr>
        <%end if%>
        <%
 j=j+1
 rs.movenext
     loop
  %>
      </table>
      
      <table width="88%" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#7A9DDE">
        <tr>
          <td height="1"></td>
        </tr>
      </table></td>
  </tr>
</table>
<table width="778" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="ffffff">
  <tr>
    <td><table width="95%" border="0" cellspacing="0" cellpadding="0">
        <tr> 
          <td width="19%"><font color="#FF0000">共有:[<%=rs.recordcount%>]&nbsp;条记录&nbsp;&nbsp; </font></td>
          <td width="51%"><a href="?pageno=1" title="首页">首页</a> <% if preno>0 then%> <a href="?pageno=<%=preno%>" title="上一页">上一页</a> 
            <%else%>
            上一页 
            <% end if%> <%if postno<=maxpage then%> <a href="?pageno=<%=postno%>" title="下一页">下一页</a> 
            <%else%>
            下一页 
            <%end if%> <a href="?pageno=<%=maxpage%>" title="末页">末页</a></td>
          <td width="30%"><div align="right"><font color="#4572E7">第<font color="#FF0000"><%=pgno%></font>页/共<font color="#FF0000"><%=maxpage%></font>页</font></div></td>
        </tr>
      </table>
      <br>
    </td>
  </tr>
</table>




不好意思楼主,偶只是搞本人在的一段代码,没去整理!!


呵呵!!这也不是一个非常好的,但基本上都用

#6


100万条啊,不是100条

#7


用存储过程写可以提高分页的速度。。。

#8


UP楼上!

#9


怎么写呢?请指教!

#10


http://community.csdn.net/Expert/topic/3132/3132779.xml?temp=.8742487

#11


给你一个例子,我收藏的。。
一种理论上最快的Web数据库分页方法。参考一下。。
http://www.eesky.com/software/info/710.htm

#12


至于存储过程的写法,可以参照网上一些ASP+SQL存储过程的实例。。很多的。。
但是SQL联机帮助这方面的东西很多。。

#13


要是数据库用access行吗?

#14


行的,access对中小型网站都比较适合,比asp+sql 差不多

#15


什么环境 ,什么配置,谁明白

#16


到底是多少条,100万条的话要用Orical

#17


支持用存储过程作

#18


一百条的分页,
在实际中,你也看不到什么实际的效果。
如果数据量大了,用sql Server 的sp分页,这是最常见的。

#19


access最大记录达到多少条?

#1


打错了,100条以上

#2


100条分页很慢?
呵。。。你的代码拿出来看看

#3



   不会的,才一百多条嘛,除非电脑很垃圾,

  用SQL server 没问题,

#4


找一找用存储过程分页的。应该会快一点,在论坛上看到,忘了在哪了:)

#5


<%
       pgno=request("pageno")
   if pgno="" or pgno<0 then pgno=1
   response.Cookies("onepage1")=15
    
      set rs=server.createobject("adodb.recordset")
      sql="select * from  Article order by id desc "   
      rs.open sql,conn,1,3 
  
  if rs.eof then 
    response.Write "<center><font color=ff000>"
    response.Write "对不起,无信息"
response.Write "</font></center>"
response.End
      end if
   rs.movefirst
   
   rs.pagesize=request.Cookies("onepage1")
   maxpage=rs.pagecount
   
   if rs.recordcount>0 then
      rs.movefirst
  rs.absolutepage=cint(pgno)
end if

   preno=pgno-1
   postno=pgno+1
 

%>
<table width="778" height="344" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF">
  <tr>
    <td valign="top"><br>
      <table width="88%" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#7A9DDE">
        <tr> 
          <td width="8%"><div align="center"><strong><font color="#FFFFFF">记录号</font></strong></div></td>
          <td width="46%"><div align="center"><strong><font color="#FFFFFF">标题</font></strong></div></td>
          <td width="19%"><p><strong><font color="#FFFFFF">发布时间</font></strong></p></td>
          <td width="13%"><strong><font color="#FFFFFF">点击数</font></strong></td>
          <td width="14%"><strong><font color="#FFFFFF">发部者</font></strong></td>
        </tr>
      </table>
      <table width="88%" border="0" align="center" cellpadding="0" cellspacing="0">
        <%j=0
      i=0
    do while not rs.eof and j<rs.pagesize
      recno=(pgno-1)*rs.pagesize+1
       i=i+1
     if i mod 2<>0 then  
  %>
        <tr bgcolor="#F8FEFD"> 
          <td width="8%"> 
            <div align="center"><font color="#FF0000"><%=(i+(pgno-1)*15) %></font></div></td>
          <td width="46%" height="20"><a href='Article_show.asp?id=<%=rs("id")%>' target="_blank" title='查看  <%=rs("qybt")%>'><%=rs("qybt")%><%if rs("fj")<>"" then response.Write "<font color=ff0000>"&"[附件]"&"</font>"%></a><% if rs("fbdate")=date then response.Write "<img src='images/new2.gif' width='19' height='7'>"%>
          </td>
          <td width="19%"> 
            <%response.Write rs("fbdate")&"&nbsp;"&(rs("fbtime"))%></td>
          <td width="13%"><font color="#FF0000"><%=rs("cs")%></font></td>
          <td width="14%"><%=rs("fjr")%></td>
        </tr>
        <%else%>
        <tr bgcolor="#F0F0FF"> 
          <td> 
            <div align="center"><font color="#FF0000"><%=(i+(pgno-1)*15) %></font></div></td>
          <td height="20"><a href='Article_show.asp?id=<%=rs("id")%>' target="_blank" title='查看  <%=rs("qybt")%>'><%=rs("qybt")%></a><a href='Article_show.asp?id=<%=rs("id")%>' target="_blank" title='查看  <%=rs("qybt")%>'><%if rs("fj")<>"" then response.Write "<font color=ff0000>"&"[附件]"&"</font>"%></a><% if rs("fbdate")=date then response.Write "<img src='images/new2.gif' width='19' height='7'>"%>
          </td>
          <td height="20"> 
            <%response.Write rs("fbdate")&"&nbsp;"&(rs("fbtime"))%>
          </td>
          <td><font color="#FF0000"><%=rs("cs")%></font></td>
          <td><%=rs("fjr")%></td>
        </tr>
        <%end if%>
        <%
 j=j+1
 rs.movenext
     loop
  %>
      </table>
      
      <table width="88%" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#7A9DDE">
        <tr>
          <td height="1"></td>
        </tr>
      </table></td>
  </tr>
</table>
<table width="778" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="ffffff">
  <tr>
    <td><table width="95%" border="0" cellspacing="0" cellpadding="0">
        <tr> 
          <td width="19%"><font color="#FF0000">共有:[<%=rs.recordcount%>]&nbsp;条记录&nbsp;&nbsp; </font></td>
          <td width="51%"><a href="?pageno=1" title="首页">首页</a> <% if preno>0 then%> <a href="?pageno=<%=preno%>" title="上一页">上一页</a> 
            <%else%>
            上一页 
            <% end if%> <%if postno<=maxpage then%> <a href="?pageno=<%=postno%>" title="下一页">下一页</a> 
            <%else%>
            下一页 
            <%end if%> <a href="?pageno=<%=maxpage%>" title="末页">末页</a></td>
          <td width="30%"><div align="right"><font color="#4572E7">第<font color="#FF0000"><%=pgno%></font>页/共<font color="#FF0000"><%=maxpage%></font>页</font></div></td>
        </tr>
      </table>
      <br>
    </td>
  </tr>
</table>




不好意思楼主,偶只是搞本人在的一段代码,没去整理!!


呵呵!!这也不是一个非常好的,但基本上都用

#6


100万条啊,不是100条

#7


用存储过程写可以提高分页的速度。。。

#8


UP楼上!

#9


怎么写呢?请指教!

#10


http://community.csdn.net/Expert/topic/3132/3132779.xml?temp=.8742487

#11


给你一个例子,我收藏的。。
一种理论上最快的Web数据库分页方法。参考一下。。
http://www.eesky.com/software/info/710.htm

#12


至于存储过程的写法,可以参照网上一些ASP+SQL存储过程的实例。。很多的。。
但是SQL联机帮助这方面的东西很多。。

#13


要是数据库用access行吗?

#14


行的,access对中小型网站都比较适合,比asp+sql 差不多

#15


什么环境 ,什么配置,谁明白

#16


到底是多少条,100万条的话要用Orical

#17


支持用存储过程作

#18


一百条的分页,
在实际中,你也看不到什么实际的效果。
如果数据量大了,用sql Server 的sp分页,这是最常见的。

#19


access最大记录达到多少条?

#20