ASP分頁顯示Recordset數據

  1.建立Recordset對象
  Dim objMyRst
  Set objMyRst=Server.CreateObject(「ADODB.Recordset」)
  objMyRst.CursorLocation=adUseClientBatch 『客戶端可批量處理
  objMyRst.CursorType=adOpenStatic』光標類型爲靜態類型
  注意:Recordset對象不能用Set objMyRst=Connection.Excute strSQL的語句建立,因爲其建立的Recordset對象爲adOpenFowardOnly不支持記錄集分頁
  2.打開Recordset對象
  Dim strSql
  strSql=」select * from ietable」
  objMyRst.Oepn strSql,ActiveConnection,,,adCmdText
  3.設置Recordset的PageSize屬性
  objMyRst.PageSize=20
  默認的PageSize爲10
  4.設置Recordset的AbsolutePage屬性
  Dim intCurrentPage
  intCurrentPage=1
  objMyRst.AbsolutePage=intCurrentPage
  AbsolutePage爲1到Recordset對象的PageCount值
  5.顯示數據
  Response.Write("<table>")
  PrintFieldName(objMyRst)
  For i=1 To objMyRst.PageSize
  PrintFieldValue(objMyRst)
  objMyRst.MoveNext
  If objMyRst.Eof Then Exit For
  Next
  Response.Write("</table>")
  說明:
  1. adOpenStatic,adUseCilentBatch,adCmdText爲adovbs.inc定義的常量,要使用的話要把adovbs.inc拷到當前目錄中並包含于在程序中
  <!--#Include File=」adovbs.inc」-->
  2. PrintFielName,PrintFieldValue函數的代碼如下:
  <%
  Function PrintFieldName(objMyRst)
  '參數objMyRst是Recordset對象
  '定義娈數
  Dim objFld
  Response.Write "<tr bgcolor='#CCCCCC'>"
  For Each objFld In objMyRst.Fields
  Response.Write "<td>" & objFld.Name & "</td>"
  Next
  Response.Write("</tr>")
  End Function
  Function PrintFieldValue(objMyRst)
  '參數objMyRst是Recordset對象
  '定義娈數
  Dim objFld
  Response.Write("<tr >")
  For Each objFld In objMyRst.Fields
  'Response.Write "<td>" & objMyRst.Fields(intLoop).value & "</td>"
  Response.Write "<td>" & objFld.value & "</td>"
  Next
  Response.Write("<tr>")
  End Function
  %>