2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、ADOADO存取數(shù)據(jù)庫時如何分頁顯示存取數(shù)據(jù)庫時如何分頁顯示ADO存取數(shù)據(jù)庫時的分頁顯示?如果你使用過目前眾多網(wǎng)站上的電子公告板程序的話,那你應(yīng)該會知道電子公告板程序?yàn)榱颂岣唔撁娴淖x取速度,一般不會將所有的帖子全部在一頁中羅列出來,而是將其分成多頁顯示,每頁顯示一定數(shù)目的帖子數(shù),譬如20條。想不想了解如何實(shí)現(xiàn)分頁顯示?請看本文!《動態(tài)網(wǎng)站設(shè)計十八般武藝ASP篇》一文從第一期至今已和朋友們一起度過了大半個年頭,相信通過在這一段時間中的學(xué)習(xí)

2、、實(shí)踐到再學(xué)習(xí)、再實(shí)踐,大家已經(jīng)能夠熟練運(yùn)用ASP的內(nèi)建對象、ActiveX組件去編寫一些基本的ASP應(yīng)用程序。從我收到的朋友們的來信中可以明顯的感覺到,大家的ASP功力正不斷地提升。最近很多朋友來信希望我寫一些ASP在現(xiàn)實(shí)運(yùn)用中的實(shí)例。因此,從本期開始我決定將《動態(tài)網(wǎng)站設(shè)計十八般武藝ASP篇》的定位從介紹和學(xué)習(xí)ASP基礎(chǔ)知識轉(zhuǎn)向到ASP實(shí)際運(yùn)行的探討和深化。應(yīng)朋友們的要求,在本期中我將給大家著重談一談“ADO存取數(shù)據(jù)庫時如何分頁顯示”

3、的問題。什么是ADO存取數(shù)據(jù)庫時的分頁顯示?如果你使用過目前眾多網(wǎng)站上的電子公告板程序的話,那你應(yīng)該會知道電子公告板程序?yàn)榱颂岣唔撁娴淖x取速度,一般不會將所有的帖子全部在一頁中羅列出來,而是將其分成多頁顯示,每頁顯示一定數(shù)目的帖子數(shù),譬如20條。這就是數(shù)據(jù)庫查詢的分頁顯示,如果你還不明白,去看看yahoo等搜索引擎的查詢結(jié)果就會明白了。那么究竟如何才能做到將數(shù)據(jù)庫的查詢結(jié)果分頁顯示呢?其實(shí)方法有很多,但主要有兩種:一、將數(shù)據(jù)庫中所有符合

4、查詢條件的記錄一次性的都讀入recdset中,存放在內(nèi)存中,然后通過ADORecdset對象所提供的幾個專門支持分頁處理的屬性:PageSize(頁大小)、PageCount(頁數(shù)目)以及AbsolutePage(絕對頁)來管理分頁處理。二、根據(jù)客戶的指示,每次分別從符合查詢條件的記錄中將規(guī)定數(shù)目的記錄數(shù)讀取出來并顯示。兩者的主要差別在于前者是一次性將所有記錄都讀入內(nèi)存然后再根據(jù)指示來依次做判斷分析從而達(dá)到分頁顯示的效果,而后者是先根據(jù)

5、指示做出判斷并將規(guī)定數(shù)目的符合查詢條件的記錄讀入內(nèi)存,從而直接達(dá)到分頁顯示的功能。我們可以很明顯的感覺到,當(dāng)數(shù)據(jù)庫中的記錄數(shù)達(dá)到上萬或更多時,第一種方法的執(zhí)行效率將明顯低于第二種方法,因?yàn)楫?dāng)每一個客戶查詢頁面時都要將所有符合條件的記娣旁詵衿髂詿嬤?,咕忬哉V蟹忠車卻恚綣庇諧100個的客戶在線查詢,那么ASP應(yīng)用程序的執(zhí)行效率將大受影響。但是,當(dāng)服務(wù)器上數(shù)據(jù)庫的記錄數(shù)以及同時在線的人數(shù)并不是很多時,兩者在執(zhí)行效率上是相差無幾的

6、,此時一般就采用第一種方法,因?yàn)榈谝环N方法的ASP程序編寫相對第二種方法要簡單明了得多。在這里作者就以我們常見的ASPBBS程序?yàn)槔?,來給大家分析一下如何在BBS程序里實(shí)現(xiàn)分頁顯示功能,由于我們一般使用的BBS程序的數(shù)據(jù)庫記錄數(shù)和同時訪問的人數(shù)都不會太多,所以以下程序?qū)嵗鞘褂玫南惹八榻B的第一種分頁顯示方法。進(jìn)行ADO存取數(shù)據(jù)庫時的分頁顯示,其實(shí)就是對Recdset的記錄進(jìn)行操作。所以我們首先必須了解Redset對象的屬性和方法:這里

7、的“rs”為一個對象變量,表示一個想要移動當(dāng)當(dāng)前記錄位置的Recdset對象;“NumRecds”是一個正負(fù)數(shù)運(yùn)算式,設(shè)定當(dāng)前記錄位置的移動數(shù)目;“start”是一個可選的項(xiàng)目,用來指定記錄起始的標(biāo)簽。所有的Recdset對象都支持Move方法,如果NumRecds參數(shù)大于零,當(dāng)前記錄位置向末尾的方向移動;如果其小于零,則當(dāng)前記錄位置向開頭的方向移動;如果一個空的Recdset對象調(diào)用Move方法,將會產(chǎn)生一個錯誤。MoveFirst方

8、法:將當(dāng)前記錄位置移至第一筆記錄。MoveLast方法:將當(dāng)前記錄位置移至最后一筆記錄。MoveNext方法:將當(dāng)前記錄位置移至下一筆記錄。MovePrevious方法:將當(dāng)前記錄位置移至上一筆記錄。Move[n]方法:移動指標(biāo)到第n筆記錄,n由0算起。三、AbsolutePage屬性AbsolutePage屬性設(shè)定當(dāng)前記錄的位置是位于哪一頁的頁數(shù)編號;使用PageSize屬性將Recdset對象分割為邏輯上的頁數(shù),每一頁的記錄數(shù)為Pa

9、geSize(除了最后一頁可能會有少于PageSize的記錄數(shù))。這里必須注意并不是所有的數(shù)據(jù)提供者都支持此項(xiàng)屬性,因此使用時要小心。與AbsolutePosition屬性相同,AbsolutePage屬性是以1為起始的,若當(dāng)前記錄為Recdset的第一行記錄,AbsolutePage為1??梢栽O(shè)定AbsolutePage屬性,以移動到一個指定頁的第一行記錄位置。四、AbsolutePosition屬性若您需要確定目前指標(biāo)在RecdSe

10、t中的位置,您可以用AbsolutePosition屬性。AbsolutePosition屬性的數(shù)值為目前指標(biāo)相對於第一筆的位置,由1算起,即第一筆的AbsolutePosition為1。注意在存取RecdSet時,無法保證RecdSet每次都以同樣的順序出現(xiàn)。若要啟用AbsolutePosition,必須先設(shè)定為使用用戶端curs(指針),asp碼如下:rs2.CursLocation=3五、PageCount屬性使用PageCoun

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論