国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

分頁學習心得1

2024-07-21 02:03:54
字體:
來源:轉載
供稿:網友

在DVBBS論壇上看到cwbnig寫的一個關于數據庫操作的類,就下載下來看一下。

發現其中在分頁時讀取記錄時的代碼比較特殊,至少以前我寫程序時沒有這樣寫過。

輸出上下分頁時也是再用“select count(*) from table where 條件”而不是用已打開的rs.recordcount屬性。以前有讀過一些文章說用rs.recordcount很耗資源,于是用正在運行的程序測試了一下(每天1萬IP左右的訪問量)。數據庫中共有687條數據。

原未改動前采用最普通的分頁程序讀出所有記錄,第一次,406.25毫秒,第二次,296.875毫秒,第三次,343.750毫秒,后又刷新了好幾次,最快一次是203.375毫秒。

改進分頁的讀取程序后,第一次,46.875毫秒,第二次,78.125毫秒,第三次,46.875毫秒。

真是差太多了,以后再也不用rs.recordcount了:(

然后再改讀取記錄的程序,原使用的是最普通的讀取記錄的程序,現改為如下代碼
(SQL可用):
...
 max="SELECT MIN(id) FROM (SELECT TOP "&(page-1)*pagesize+1&" id FROM table ORDER BY id DESC) tbl"
 strsql="SELECT TOP "&pagesize&" * FROM table WHERE id <=("&max&") ORDER BY id DESC"
 rs.open strsql,conn,1,1
 ...
(ACCESS可用):
...
 strsql="SELECT TOP "&pagesize*page&" * FROM table ORDER BY id DESC"
 strsql="SELECT TOP "&pagesize&" * FROM ("&strsql&") AS tblme ORDER BY "&id&" ASC"
 strsql="SELECT * FROM ("&strsql&") AS tblme ORDER BY "&id&" DESC"
 rs.open sql,conn,1,1
...

不過,這個改了之后,頁面執行時間到沒有減少(可能是記錄數不多的原因,明天找個記錄數多點的再改一下)。一直是46.875毫秒,第二、三、五十幾頁都是這個速度,偶爾會出現32.125毫秒:)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 托里县| 闵行区| 海城市| 宁陵县| 巍山| 云和县| 垫江县| 大洼县| 水城县| 钦州市| 香格里拉县| 垦利县| 资源县| 平果县| 京山县| 长武县| 林芝县| 舟山市| 阜城县| 双峰县| 虎林市| 灵宝市| 徐水县| 桑植县| 红安县| 信丰县| 义马市| 当阳市| 抚顺市| 高阳县| 天峻县| 马公市| 长武县| 山东省| 扎赉特旗| 健康| 寻乌县| 乾安县| 南平市| 阿城市| 玉田县|