Saya baru-baru ini melatih orang lain tentang paging ASP. Untuk pemula yang baru mengenal ASP, paging yang paling sederhana adalah dengan menggunakan teknologi paging Recordset cocok untuk paging data dalam jumlah besar.
1. Buat objek Recordset
Salin kode sebagai berikut:Dim objMyRst
Set objMyRst=Server.CreateObject(ADODB.Recordset)
objMyRst.CursorLocation=adUseClientBatch 'Klien dapat melakukan proses batch
objMyRst.CursorType=adOpenStatic' Tipe kursor adalah tipe statis
Catatan: Objek Recordset tidak boleh digunakan dengan Set objMyRst=Koneksi Pernyataan strSQL dibuat karena objek Recordset yang dibuatnya adalah adOpenFowardOnly dan tidak mendukung paging recordset
2. Buka objek Recordset
dan copy kode sebagai berikut:
Dim strSql
strSql=select * from ietable
objMyRst.Oepn strSql,ActiveConnection,,,adCmdText
3. Atur properti PageSize dari Recordset
dan salin kode sebagai berikut:
objMyRst.PageSize=20.
Default PageSize adalah 10.
4. Atur properti AbsolutePage dari Recordset
sebagai berikut:
Salin kode sebagai berikut:
Redupkan intCurrentPage
intCurrentPage=1
objMyRst.AbsolutePage=intCurrentPage
AbsolutePage adalah 1 ke nilai PageCount objek Recordset
5.
Kodeuntuk menampilkan
kode copy data adalah sebagai berikut:
Response.Write(<table>)
PrintFieldName(objMyRst)
For i=1 To objMyRst.PageSize
PrintFieldValue(objMyRst)
objMyRst.MoveNext
If objMyRst.Eof Then Exit For
Next
Response.Write( </tabel> )
Petunjuk:
1.
adOpenStatic, adUseCilentBatch,adCmdText
adalah konstanta yang ditentukan oleh adovbs.inc. Untukmenggunakannya
, salin adovbs.inc ke direktori saat ini dan sertakan dalam program.
--#Include File=adovbs.inc-->
2. Kode fungsi PrintFielName, PrintFieldValue adalah sebagai berikut:
Salin kode sebagai berikut:
<%
Function PrintFieldName(objMyRst)
'Parameter objMyRst adalah objek Recordset
' Definisi
Dim objFld
Response.Write < tr bgcolor='#CCCCCC'>
Untuk Setiap objFld Di objMyRst.Fields
Response.Write <td> & objFld.Name & </td>
Next
Response.Write(</tr>)
Fungsi Akhir
Fungsi PrintFieldValue(objMyRst)
'Parameter objMyRst adalah objek Recordset
' Definisi
Redupkan objFld
Response.Write(<tr >)
For Setiap objFld Di objMyRst.Fields
'Response.Write<td> & objMyRst.Fields(intLoop).value & </td>
Response.Write <td> & objFld.value & </td>
Respons
Berikutnya.Write
(<tr>)Fungsi Akhir
%>