狠狠爱成人网_日韩一级在线_国产综合自拍_亚洲精品韩国_亚洲视频导航_麻豆成人在线播放_欧美jjzz_一区在线视频观看_美脚丝袜一区二区三区在线观看_欧美91视频

當前位置:系統之家 > 技術開發教程 > 詳細頁面

在ASP中改善動態分頁的性能

在ASP中改善動態分頁的性能

更新時間:2024-04-11 文章作者:未知 信息來源:網絡 閱讀次數:

原作:張立鋒 張 禾

概 述  
現在有不少介紹利用ASP實現動態分頁的文章,方法大同小異,就是每次利用ADO返回原始數據滿足條件記錄集中的指定頁。但在實際工程應用中,原始數據量通常很大,原始數據的加工比較慢,如果每次換頁原始數據都要加工一次,則會嚴重影響應用程序運行的性能。  
解決上述問題主要有兩種途徑:一種途徑是將查詢條件相對固定,利用相對固定的查詢條件對原始數據進行加工,生成一個小數據量的中間庫,每次查詢都對中間庫進行操作。這樣雖然會提高程序的性能,但會影響程序的靈活性,而且 Server端還需定時對原始數據進行加工維護。另一個途徑是在Server端保存查詢的結果。這樣雖然不能改善查詢的性能,但Client端換頁時Server端能夠很快響應。第一種途徑的實現比較簡單,本文介紹第二種途徑的實現方法。  

實現方法  
將Server端的查詢結果保存在一個動態數組中,即在 Session_OnStart過程中聲明一個二維的動態數組。當Server端收到Client端提交的申請后,首先判斷申請是條件查詢還是換頁,如是條件查詢則判別查詢條件是否與上次提交的查詢條件不同,如不同則執行查詢,將查詢結果保存在該數組中,然后向Client端返回第一頁的內容,否則直接從該數組中返回相應頁的內容。  
程序實現  
1.定義二維數組及其他變量  
Sub Session_OnStart
dim TempDb()  
redim Preserve TempDb(1,2)  
session(“StoredArray") = TempDb  
’定義一個Session數組
session(“iPageCount")=0
session(“iPageNo")=0
......
End Sub

2.調用存儲過程返回數據  

Sub GetRecordSet(strBbmc,strKssj ,
strZzsj ,strNodeCode ,strFxzl )
'參數為報表名稱和各個限制條件
select case strBbmc
case “交易匯總表"
strCnn=“PROVIDER=MSDASQL;dsn=sqldb;
uid=sa;pwd=123456;database=vlog;"
Set objcnn=Server.CreateObje(“ADODB.Connection")
objcnn.CommandTimeout = 9999999
objcnn.ConnectionTimeout = 99999999
objcnn.CursorLocation = adUseClient
objcnn.Open strCnn '打開連接  
Set objRs =Server.CreateObject
(“ADODB.Recordset")  
objRS.PageSize = iPageSize
objRS.CacheSize = iPageSize
objRs.Open “sszhatmlog ‘“ & strKssj & "' ,
‘“ & strZzsj & "', ‘“ & strNodeCode & "' ,
‘“ & strFxzl & "'",objcnn,adOpenStatic ,
adLockReadOnly,1
’執行存儲過程返回查詢結果
......
End Sub  

3.將查詢結果保存到動態數組  

Sub SaveRecordSet()  
if objRs.EOF = false then
objRs.movelast
session(“iRowCount") = objRs.recordCount
session(“iFieldCount") = objRs.Fields.Count
session(“iPageCount") = objRs.pagecount
redim Preserve TempArray(session
(“iRowCount"),session(“iFieldCount"))  
’TempArray是一個二維動態數組,  
根據記錄集大小重新定義其大小
objRs.MoveFirst
iCount=0  
do while objRs.EOF=false
iCount = iCount + 1  
for i= 1 to session(“iFieldCount")
TempArray(iCount,i)=objRs.Fields.Item
(i-1).value
next  
objRs.MoveNext  
loop
session(“StoredArray") = TempArray  
objRs.Close  
else
session(“iPageCount") = 0
end if
End Sub

4.顯示記錄內容  

Sub ShowRecord()
......
LocalArray=session(“StoredArray")  
iShowTotal=(iPageCurrent-1)*iPageSize+1  
iRowLoop = 1
do while iRowLoop < = iPageSize and iShowTotal
< = session(“iRowCount")
Response.Write(“< TR >")  
for i = 1 To session(“iFieldCount")
Response.write(“< TD >"  
& LocalArray(iShowTotal,i)) Next
Response.Write(“< /TR >")  
iShowTotal = iShowTotal + 1  
iRowLoop = iRowLoop + 1 loop
Response.Write(“< /TABLE >")  
if iPageCurrent < > 1 and  
iPageCurrent < session
(“iPageCount") then
% >
< center >< A HREF=“db_pag.asp?page=< %=  
iPageCurrent - 1 % >" >前一頁< /A >< A HREF=
“db_pag.asp?page=< %= iPageCurrent + 1 % >" >
后一頁< /A >< /center >  
< %  
else  
if iPageCurrent < > 1 then
% >
< center >< A HREF=“db_pag.asp?page=< %=
iPageCurrent - 1 % >" >前一頁 < /A >< /center >  
< %
end if
if iPageCurrent < session(“iPageCount")then
% >
< center >< A HREF=“db_pag.asp?page=
< %= iPageCurrent + 1 % >" >后一頁 < /A >
< /center >
< %
end if
end if
End Sub

5.主程序  

if Request.QueryString(“page") = “" then  
’提交查詢申請并且查詢條件與上一次不同
......
call GetRecordSet(strBbmc,strKssj,strZzsj,
strNodeCode,strFxzl)  
call SaveRecordSet  
Else
iPageCurrent=CInt(Request.QueryString(“page"))
strKssj=session(“strKssj")
end if  
if session(“iPageCount") = 0 then  
Response.Write “抱歉!沒有滿足條件的記錄"
Response.Write “< Br >"
else  
call showrecord()  
end if

結束語  
本程序的關鍵在于Session數組的定義及其賦值的實現,通過應用Session數組可以提高處理大量數據的應用程序的性能。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

狠狠爱成人网_日韩一级在线_国产综合自拍_亚洲精品韩国_亚洲视频导航_麻豆成人在线播放_欧美jjzz_一区在线视频观看_美脚丝袜一区二区三区在线观看_欧美91视频
在线视频你懂得一区| 亚洲一区二区伦理| 欧美一二三区在线观看| 欧美一区二区三区电影| 久久久亚洲高清| 亚洲电影在线免费观看| 亚洲人成伊人成综合网小说| 国产精品卡一卡二卡三| 日本中文字幕不卡| 99久久夜色精品国产网站| 久久久美女毛片| 秋霞电影网一区二区| www.日韩在线| 久久综合伊人| 欧美激情一区二区三区全黄| 老司机精品视频导航| 亚洲国产专区| 日韩欧美亚洲国产精品字幕久久久| 一区二区三区精密机械公司| 波多野结衣的一区二区三区| 看欧美日韩国产| 国产精品国产三级国产普通话99| 韩国欧美国产1区| 在线视频精品| 国产色91在线| 国产三级欧美三级日产三级99| 玖玖国产精品视频| 亚洲国产精品成人综合色在线婷婷 | 国产电影一区二区三区| 国产日韩综合| 国产精品三级av| 成人白浆超碰人人人人| 欧美最猛黑人xxxxx猛交| 一个色在线综合| 欧美激情精品久久久六区热门| 欧美日韩综合不卡| 亚洲地区一二三色| 亚洲美女黄网| 国产精品免费人成网站| 97久久精品人人做人人爽50路| 欧美日韩二区三区| 激情文学综合网| 亚洲一区国产视频| bt7086福利一区国产| 亚洲精品社区| 亚洲自拍偷拍网站| 牛牛国产精品| 欧美xxxxx裸体时装秀| 久草精品在线观看| 欧美亚洲动漫另类| 久久99国产乱子伦精品免费| 91福利社在线观看| 久草这里只有精品视频| 欧美手机在线视频| 激情另类小说区图片区视频区| 蜜桃视频一区二区三区在线观看| 久久岛国电影| 青青草国产成人99久久| 在线观看视频91| 成人动漫一区二区在线| 精品欧美一区二区在线观看| 99久久亚洲一区二区三区青草| 亚洲一区在线直播| 欧美一卡2卡三卡4卡5免费| 美女网站一区二区| 国产精品免费视频网站| 久久色在线视频| 国产精品久久久久影院| 久久视频一区二区| 欧美视频亚洲视频| 中文字幕中文字幕中文字幕亚洲无线| 91麻豆精品秘密| 中文字幕一区日韩精品欧美| 久久婷婷色综合| 99久久精品免费精品国产| 精品欧美一区二区久久 | 日韩成人免费在线| 欧美另类变人与禽xxxxx| www.欧美日韩| 亚洲一级片在线观看| 欧美丝袜丝nylons| 99久久久久久99| 亚洲女同女同女同女同女同69| 香蕉国产精品偷在线观看不卡| 久久99九九99精品| 久久精品观看| 亚洲激情女人| 成人av在线网| 久久成人久久鬼色| 国产精品国产三级国产专播品爱网| 麻豆成人在线播放| 99热国产精品| 国产高清精品在线| 视频一区视频二区在线观看| 337p粉嫩大胆色噜噜噜噜亚洲 | 一区二区高清视频| 国产一区二区三区精品欧美日韩一区二区三区| 国产精品麻豆久久久| 日韩一级欧美一级| 欧美系列亚洲系列| 成人精品国产免费网站| 欧美经典一区二区| 欧美日韩一级片网站| 国产欧美一区二区色老头| 日韩三级.com| 精品一区二区三区香蕉蜜桃 | 日韩 欧美一区二区三区| 欧美一级欧美三级在线观看| 在线欧美福利| 国产美女久久久久| 亚洲欧美日韩国产综合在线| 欧美最新大片在线看| 欧美日韩免费观看一区=区三区| 天堂va蜜桃一区二区三区| 国产在线精品一区在线观看麻豆| 亚洲妇女屁股眼交7| 亚洲大片精品永久免费| 五月综合激情网| 亚洲综合久久久| 亚洲免费观看高清在线观看| 亚洲色图第一区| 亚洲精品中文在线观看| 亚洲国产精品嫩草影院| 亚洲国产精品自拍| 美女视频黄免费的久久| 久久机这里只有精品| 成人一级视频在线观看| 亚洲一区二区三区涩| 国产精品毛片va一区二区三区| 久久久www| 日韩一区二区三区电影在线观看 | 在线免费高清一区二区三区| 亚洲三级影院| 91久久精品一区二区二区| 制服.丝袜.亚洲.中文.综合| 精品日韩99亚洲| 亚洲精品国产无套在线观 | 精品在线观看视频| 不卡一区二区在线| 亚欧成人精品| 99视频+国产日韩欧美| 亚洲东热激情| 欧美一区二区三区视频| 国产精品色婷婷| 国产欧美一区二区视频| 国产精品66部| 国产欧美一区二区三区在线看蜜臀 | 成人免费毛片片v| 久久色视频免费观看| 欧美浪妇xxxx高跟鞋交| 欧美最猛黑人xxxxx猛交| 欧美一卡二卡在线观看| 欧美三级视频在线| 国产成人综合在线观看| 欧美色涩在线第一页| 国产亚洲欧美在线| 国产综合成人久久大片91| 亚洲一区在线免费| 亚洲综合精品自拍| 波多野结衣在线一区| 色哟哟国产精品| 亚洲电影第三页| 99精品热6080yy久久| 欧美精品亚洲一区二区在线播放| 狠狠色综合播放一区二区| 亚洲欧美日韩国产成人精品影院| 日韩一二在线观看| 伊人开心综合网| 国产亚洲成av人在线观看导航| 亚洲欧洲日本国产| 亚洲福利视频一区| 亚洲精品国产a久久久久久| 亚洲欧洲日韩av| 国产精品美女久久久久高潮| 欧美国产日韩亚洲一区| 国产精品美女久久久久久久久久久 | 亚洲嫩草精品久久| 一区二区三区四区中文字幕| 亚洲一区在线免费观看| 亚洲成人三级小说| 视频一区二区不卡| 久久av资源网| 国产91精品一区二区麻豆亚洲| 国产91丝袜在线播放0| av在线这里只有精品| 欧美日韩亚洲一区二区三区在线观看 | 日韩一区二区免费视频| 久久女同精品一区二区| 国产精品久久久久久久久久免费看| 自拍偷拍国产亚洲| 亚洲国产精品久久一线不卡| 免费在线观看成人| 国产99久久久国产精品免费看| 成人黄色国产精品网站大全在线免费观看| 国产成人免费视频网站高清观看视频 | 正在播放一区二区| 欧美国产日产图区| 亚洲午夜久久久久久久久电影院| 亚洲成人免费视频| 国产精品一区二区黑丝|