筆者大致講述ADO 存取的先關主要事宜
什么是 ADO 存取時的分頁顯示?如果你使用過目前眾多網(wǎng)站上的電子公告板程序的話,如果你要使用網(wǎng)速穩(wěn)定的互聯(lián)網(wǎng),這樣就可以有效地使用ADO 存取的相關說明。。。。
《動態(tài)網(wǎng)站設計十八般武藝 -- 篇》一文從***期至今已和朋友們一起度過了大半個年頭,相信通過在這一段時間中的學習、實踐到再學習、再實踐,大家已經(jīng)能夠熟練運用 ASP 的內建對象、 ActiveX 組件去編寫一些基本的 ASP 應用程序。
從我收到的朋友們的來信中可以明顯的感覺到,大家的 ASP 功力正不斷地提升。最近很多朋友來信希望我寫一些 ASP 在現(xiàn)實運用中的實例。因此,從本期開始我決定將《動態(tài)網(wǎng)站設計十八般武藝 --ASP 篇》的定位從介紹和學習 ASP 基礎知識轉向到 ASP 實際運行的探討和深化。應朋友們的要求,在本期中我將給大家著重談一談“ADO 存取時如何分頁顯示”的問題。
這就是數(shù)據(jù)庫查詢的分頁顯示,如果你還不明白,去看看 yahoo 等搜索引擎的查詢結果就會明白了。 那么究竟如何才能做到將的查詢結果分頁顯示呢?其實方法有很多,但主要有兩種:
一、將中所有符合查詢條件的記錄一次性的都讀入 recordset 中,存放在內存中,ADO 存取然后通過 ADO Recordset 對象所提供的幾個專門支持分頁處理的屬性: PageSize( 頁大小 )、 PageCount( 頁數(shù)目 ) 以及 AbsolutePage( 絕對頁 ) 來管理分頁處理。
二、根據(jù)客戶的指示,每次分別從符合查詢條件的記錄中將規(guī)定數(shù)目的記錄數(shù)讀取出來并顯示。
兩者的主要差別在于前者是一次性將所有記錄都讀入內存然后再根據(jù)指示來依次做判斷分析從而達到分頁顯示的效果,而后者是先根據(jù)指示做出判斷并將規(guī)定數(shù)目的符合查詢條件的記錄讀入內存,從而直接達到分頁顯示的功能。#t#
我們可以很明顯的感覺到,當中的記錄數(shù)達到上萬或更多時,***種方法的執(zhí)行效率將明顯低于第二種方法,因為當每一個客戶查詢頁面時都要將所有符合條件的記錄存放在內存中,然后在進行分頁等處理,如果同時有超過 100 個的客戶在線查詢,那么 應用程序的執(zhí)行效率將大受影響。
但是,當服務器上數(shù)據(jù)庫的記錄數(shù)以及同時在線的人數(shù)并不是很多時,ADO 存取在執(zhí)行效率上是相差無幾的,此時一般就采用***種方法,因為***種方法的 ASP 程序編寫相對第二種方法要簡單明了得多。