Halaman ini menggunakan 0 kursor, yaitu, Rs.Open SQL, Conn, 0,1. Tapi itu tidak terasa bahwa itu jauh lebih cepat, dan waktu paging 100.000 data lebih dari 300 detik.
Salinan kode adalah sebagai berikut:
<%
'***********************************
'Nama: Kelas Pagination
'Tanggal: 2005/12/3
'Penulis: Leng Yue, Xilou
'Situs web: www.xilou.net | www.chinacms.org
'Deskripsi: tidak ada
'Hak Cipta: Silakan merujuk ke sumber untuk mencetak ulang, penulis
'***********************************
Halaman kelas
Private Currpage
Private Pagen
URLSTR pribadi
Tempstr Pribadi
Private errinfo
Iserr pribadi
Total Total Record
Total Halaman Pribadi
Pager publik
Tempa Pribadi (11)
Tempb Pribadi (8)
'-------------------------------------------------------------
Private sub class_initialize ()
Currpage = 1 '// Tampilan default dari halaman saat ini adalah halaman pertama
Pagen = 10 '// default 10 lembar data ditampilkan per halaman
Urlstr = "#"
Tempstr = ""
Errinfo = "errinfo:"
Iserr = false
Akhir sub
Private Sub Class_Terminate ()
Jika isObject (pagers) lalu
Pagers. Close
Atur pagers = tidak ada
Akhiri jika
Hapus tempa
Hapus tempb
Akhir sub
'----------------------------------------------------------
'// Dapatkan nomor halaman saat ini
Properti Publik Let Currentpage (Val)
Currpage = val
Akhir properti
Properti Publik Dapatkan CurrentPage ()
SurrentPage = Currpage
Akhir properti
'// Dapatkan jumlah potongan per halaman yang ditampilkan
Properti Publik Let Pagenum (Val)
Pagen = Val
Akhir properti
Properti Publik Dapatkan Pagenum ()
Pagenum = Pagen
Akhir properti
'// Dapatkan URL
Properti Publik Biarkan URL (Val)
Urlstr = val
Akhir properti
Properti publik mendapatkan url ()
Url = urlstr
Akhir properti
'// Dapatkan template
Properti Publik Let Temp (Val)
Tempstr = Val
Akhir properti
Properti Publik Dapatkan Temp ()
Temp = Tempstr
Akhir properti
'-------------------------------------------------------------
Sub Sub Umum (SQL, Connobj)
Pada kesalahan resume berikutnya
Setel pagers = server.CreateObject ("adodb.recordset")
Pagers.cursorlocation = 3 'Menggunakan kursor klien dapat meningkatkan efisiensi
Pagers.pagesize = pagen 'Tentukan halaman catatan set Jumlah catatan yang ditampilkan per halaman
Pagers.open sql, connobj, 0,1
Jika err.number <> 0 lalu
Err.clear
Pagers. Close
Atur pagers = tidak ada
Errinfo = errinfo & "kesalahan membuat atau membuka set rekaman ..."
Iserr = true
Response.write errinfo
Respons.end
Akhiri jika
TotalRecord = pagers.recordcount '// Bagaimana jika itu 0?
Jika TotalRecord> = 1 lalu
'----------------------------------------------------------------------------awal
'// Hitung jumlah total halaman, PS, mengapa tidak menggunakan pagers.pagecount?
'Jika TotalRecord Mod Pagen = 0 lalu
'TotalPage = pagers.recordcount/pagen
'Kalau tidak
'TotalPage = pagers.recordcount/pagen
'TotalPage = ABS (int (TotalPage))
'Akhiri jika
TotalPage = pagers.pagecount
'// Proses nomor halaman yang diterima saat ini, standarnya adalah 1, jadi jika Anda bukan tipe numerik, Anda akan menjadi 1
Jika isnumeric (Currpage) maka