Recordset物件的應用
Recordset物件是應用在對資料的查詢作業之上。Recordset物件會在我們所連結的資料庫檔案裡,形成一個指標,指向資料庫檔案裡的資料,然後我們可以利用Recordset物件所含有的方法,在資料庫檔案裡,上下移動這個指標,移到我們想要查詢的資料記錄上。
透過Recordset物件的協助,會先將資料庫資料儲存到Recordset裡,如此一來,這個資料庫就可以讓兩個以上的使用者同時存取使用了。也就是說,如果我們不使用Recordset物件,那麼在同一時間之內,資料庫裡的資料就只能允許一位使用者來進行存取的動作了。

◎  立recordset物件,並開啟recordset物件
寫法一:
Set rs = Server.CreateObject("ADODB.Recordset") 
sql =  "Select * From person "  
rs.open sql, conn, 1,   
寫法二:
Set rs = Server.CreateObject("ADODB.Recordset")      
rs.open "Select * From person ", conn, 1, 1 
說明:
1.建立recordset物件,並存入rs變數中。
2.使用 recordset 物件的『Open』方法來開啟recoredset物件。
3.在rs.open "select*from person",conn,1,1這句話裡共有四個參數。其意義如下:
第一個參數 是"select*from person",這是所謂的SQL語法。即是設定查詢的範圍。
第二個參數 是要設定之前建立的Conncction物件名稱。
第三個參數

就是其中1部份,就是所謂的CursorType。  可能的設定值還包括:

0(ForwardOnly) 只能在資料庫裡往前進行瀏覽的動作,雖然無法進行所有的瀏覽動作,但是它的查詢效率,卻是最佳的。
1 (Keyset) 能在資料庫裡進行完整的瀏覽動作,對於資料的新增與刪除並不會自動更新,但是對於修改目前被指向資料記錄內的資料,則會自動更新。
2 (Dynamicset) 也是能在資料庫裡進行完整的瀏覽動作,對於目前被指向資料記錄內的資料進行新增、刪除以及修改的動作,都會自動更新,達到即時更新的效果,但是查詢效率也就因此被拖慢了。
3 (Staticset) 對於資料庫裡也能進行完整的瀏覽動作,對於目前被指向資料記錄內的資料進行新增、刪除以及修改的動作,也都會自動更新,但是卻不會及時地反應到其他使用者的資料裡,也就是說,其他使用者並不會馬上看到這項資料結果,可以利用批次的方式,將資料定時更新至資料庫。
第四個參數

就是其中1部份。這個參數是LockType,預設值就是1。它的設定值可以是:

1 (ReadOnly) 唯讀模式,只允許使用者對資料庫進行讀取的動作。
2 (Pessimistic) 是代表保守模式,可以增加、修改或是刪除記錄,但是當記錄處於被維護的狀態時,就會被鎖定,不能做加增、修改或是刪除的動作了。
3 (Optimistic) 開放模式,可以進行增加、修改或是刪除的動作,而且只有存檔時才會鎖定記錄資料,否則只是在維護的狀態時,使用者仍然可以進行增加、修改或是刪除的動作。
4 (BatchOptimistic) 開放鎖定模式,記錄資料都會在Batch的模式下被使用。

範例
範例(一):使用Addnew方法 
rs.addnew       '新增一筆資料錄
rs("no")="0001"
rs("name")="cyming"
rs("tel")="06-3559652"
rs("email")="cyming@mail.asjh.tn.edu.tw"
rs.update         '更新資料錄 

範例(二):使用Movenext方法
Do While Not Rs.Eof         '檢查是否已到記錄的最末端
   Response.Write Rs("Id")
   Response.Write Rs("Name")
   Response.Write Rs("Email")
   Rs.MoveNext               '移到下一筆
Loop

範例(三):使用pagesize,absolutepage方法
rs.pagesize=10                        '設定每頁顯示的筆數
rs.AbsolutePage=page          '顯示目前的頁數
for ipage=1 to rs.pageSize 
     Response.Write rs("事件")
     rs.movenext
     if rs.eof then exit for
next
rs.close                            '關閉recordset物件

說明:
有關recordset的屬性和方法.....詳見.....