程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> ASP:隨機訪問Recordset的一條記錄

ASP:隨機訪問Recordset的一條記錄

編輯:關於ASP編程

       假設這個數據表有一個唯一的ID字段,並至少有一條記錄。隨機存取其中一條記錄的方法是非常簡單的,可以分為四步:

      1、取得記錄總數n。

      2、把所有的ID號存儲到一個數組中

      3、產生一個不大於n的隨機數m

      4、從數組中取出第m個ID號,查詢數據表,取得記錄數據。

      下面是部分代碼:

      $#@60;%

      set conn = Server.CreateObject(‘ADODB.Connection‘)

      conn.open ‘$#@60;conn string$#@62;‘

      ‘ ***** (step 1) *****

      set rs = conn.execute(‘Select count(id) from someTable‘)

      rCount = rs(0)

      ‘ ***** (step 2) *****

      set rs = conn.execute(“select id from someTable”)

      cnt = 1

      dim RRs

      redim RRs(rCount)

      do while not rs.eof

      RRs(cnt) = rs(0)

      cnt = cnt + 1

      rs.movenext

      loop

      ‘ ***** (step 3) *****

      randomize

      currentRR = cLng(rnd*rCount+0.5)

      ID = RRs(currentRR)

      ‘ ***** (step 4) *****

      sql = “select otherfield from someTable where id=” & ID

      set rs = conn.execute(sql)

      response.write “ID # ” & ID & “ = ” & rs(0)

      rs.close: set rs = nothing

      conn.close: set conn = nothing

      %$#@62;

      對於SQL Server,還有更加有效率的方法。比如設計兩個存儲過程。我這裡只是闡明一些思路,並希望這種思路可以同時用在Access和SQL Server中。

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved