ASP中幾種分頁顯示的比較

來源:互聯網
上載者:User
比較|分頁|顯示   下面通過對比來看看幾種方式的用時對比。  

  一,使用預存程序分頁,這種情況又分為兩種方式:  

  第一種,使用command對象,如下:  

  SetCmd=server.CreateObject("Adodb.Command")

  Cmd.ActiveConnection=conn

  Cmd.CommandText="ycuu_gb_getmsg"

  Cmd.CommandType=4'adCmdStoredProc

  cmd.prepared=true'

  setparam=Cmd.CreateParameter("@iPageNo",adInteger,1,2,Page)

  Cmd.Parameters.Appendparam

  setparam=Cmd.CreateParameter("@iPageSize",adInteger,1,2,PageSizeConst)

  Cmd.Parameters.Appendparam

  setrs=Cmd.execute  

  第二種,使用connection對象的執行方法直接執行,具體如下:  

  setrs=conn.execute("executeycuu_gb_getmsg"&page&","&pagesizeConst)  

  二,不使用預存程序,直接使用ADODB.RecordSet的功能來分頁,具體代碼如下:  


  Setrs=Server.CreateObject("ADODB.Recordset")

  sql="Select*FROMGuestbookOrderBydateandtimeDesc"

  rs.opensql,conn,1,1

  rs.pagesize=150'每頁顯示的留言數量,

  total=rs.RecordCount

  mypagesize=rs.pagesize

  rs.absolutepage=page 

  為了更加明顯地顯示出速度,我把每頁顯示的留言數量加大到150(事實上當然不會設定這麼大的數值啦)。至於我機器的配置,就省略不說了,因為主要是速度對比。  

  發現,執行的時候時間分別如下: 

  第一種:穩定於0.1953125秒到0.2109375秒之間,平均值大概是:0.20秒  

  第二種:穩定於0.1716875秒到0.1857秒之間,平均值大概是:0.177秒  

  第三種:穩定於0.4375秒到0.4632秒之間,平均值大概是:0.45秒  

  但是,當讀取的記錄條數為20的時候,結果如下:

  發現,執行的時候時間分別如下:  

  第一種:穩定於.0390625秒到.0546875秒之間,平均值大概是:0.045秒  

  第二種:穩定於0.046875秒到.0546875秒之間,平均值大概是:0.050秒  

  第三種:穩定於.09375秒到0.1015625秒之間,平均值大概是:0.97秒  

  在這樣看來,似乎conn.execute和command.execute這兩種方式似乎差別並不大,

  而前者的調用方式好像更加簡單一點。

  同時,在這裡可以看出分頁的預存程序速度確實比recordset的分頁速度要快很多。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.