以下是引用yadakami在2006-9-22 10:51:59的发言:
分页有两种方法,一种是select * from table表;另一种是select top 100 from table表这样的。第一种方法先要把所有数据读出,资源占用比较大,如果数据量不大的时候是很方便的,但是如果数据量比较大,就需要用到第二种方法来分页。第一种方法如何分页,我略有了解,第二种的话,select top 100 * from table where id not in (select top 100*(pagecount-1) id from table1)下一个数据库的选择语句,但是如何和分页结合在一起,我不太会,请高手帮忙
对!
很支持这种观点
我有的时候也长用这种方式来写,一般也就是在数据量比较大的时候
objRS.AbsolutePage=PageNo
For I=1 To objRS.PageSize
Response.Write"<Tr Bgcolor="&BG(I-1)&">"
Response.Write"<Td Width='15%'><Img Src="&Fig(I-1)&"></Td>"
Response.Write"<Td Width='85%'>作者:"&objRS("作者")&"<Br>主题:"&objRS("主题")&"<Br>时间:"&objRS("时间")&"<Hr>"&objRS("内容")&"</Td></Tr>"
objRS.MoveNext
strSQL="select * from 留言板 order by 时间 DESC"
Set objRS=GetSQLRecordset(strSQL,"Books.mdb","留言板")
objRS.PageSize=5 '为什么这里要objRS访问
PageNo=Request("PageNo")
Response.Write"["
For I=1 To objRS.PageCount
If I=CInt(PageNo) Then
Response.Write I &" | "
Else
Response.Write"<a href='GuestBook.asp?PageNo="&I&"'>"&I&"</a>"&" | "
End If
Next
Response.Write"]"
%>
分页有两种方法,一种是select * from table表;另一种是select top 100 from table表这样的。第一种方法先要把所有数据读出,资源占用比较大,如果数据量不大的时候是很方便的,但是如果数据量比较大,就需要用到第二种方法来分页。第一种方法如何分页,我略有了解,第二种的话,select top 100 * from table where id not in (select top 100*(pagecount-1) id from table1)下一个数据库的选择语句,但是如何和分页结合在一起,我不太会,请高手帮忙