對象|記錄集 Rs.movenext 將記錄指標從當前的位置向下移一行
Rs.moveprevious 將記錄指標從當前的位置向上移一行
Rs.movefirst 將記錄指標移到資料表第一行
Rs.movelast 將記錄指標移到資料表最後一行
Rs.absoluteposition=N 將記錄指標移到資料表第N行
Rs.absolutepage=N 將記錄指標移到第N頁的第一行
Rs.pagesize=N 設定每頁為N條記錄
Rs.pagecount 根據 pagesize 的設定返回總頁數
Rs.recordcount 返回記錄總數
Rs.bof 返回記錄指標是否超出資料表首端,true表示是,false為否
Rs.eof 返回記錄指標是否超出資料表末端,true表示是,false為否
Rs.delete 刪除目前記錄,但記錄指標不會向下移動
Rs.addnew 添加記錄到資料表末端
rs.update 更新資料表記錄
--------------------------------------------------------------
Recordset對象方法
Open方法
recordset.Open Source,ActiveConnection,CursorType,LockType,Options
Source
Recordset對象可以通過Source屬性來串連Command對象。Source參數可以是一個Command對象名稱、一段SQL命令、一個指定的資料表名稱或是一個Stored Procedure。假如省略這個參數,系統則採用Recordset對象的Source屬性。
ActiveConnection
Recordset對象可以通過ActiveConnection屬性來串連Connection對象。這裡的ActiveConnection可以是一個Connection對象或是一串包含資料庫連接資訊(ConnectionString)的字串參數。
CursorType
Recordset對象Open方法的CursorType參數表示將以什麼樣的遊標類型啟動資料,包括adOpenForwardOnly、adOpenKeyset、adOpenDynamic及adOpenStatic,分述如下:
--------------------------------------------------------------
常數??????????????????????????????? 常數值????????????? ?說明
--------------------------------------------------------------
adOpenForwardOnly???????? 0?????????????????????? 預設值,啟動一個只能向前移動的遊標(Forward Only)。
adOpenKeyset????????????? ??? ?1??????????????????????啟動一個Keyset類型的遊標。
adOpenDynamic??????????????? 2??????????????????????啟動一個Dynamic類型的遊標。
adOpenStatic??????????????????? ?3????????????????????? 啟動一個Static類型的遊標。
--------------------------------------------------------------
以上幾個遊標類型將直接影響到Recordset對象所有的屬性和方法,以下列表說明他們之間的區別。
--------------------------------------------------------------
Recordset屬性 adOpenForwardOnly?? adOpenKeyset?? adOpenDynamic?? adOpenStatic
--------------------------------------------------------------
AbsolutePage?????????? 不支援 不支援 可讀寫 可讀寫
AbsolutePosition????? ?不支援 不支援 可讀寫 可讀寫
ActiveConnection???? 可讀寫 可讀寫 可讀寫 可讀寫
BOF??????????????????????? 唯讀 唯讀 唯讀 唯讀
Bookmark?????????????? 不支援 不支援 可讀寫 可讀寫
CacheSize???????????????可讀寫 可讀寫 可讀寫 可讀寫
CursorLocation??????? 可讀寫 可讀寫 可讀寫 可讀寫
CursorType?????????????可讀寫 可讀寫 可讀寫 可讀寫
EditMode???????????????? 唯讀 唯讀 唯讀? 唯讀
EOF???????????????????????? 唯讀 唯讀 唯讀 唯讀
Filter?????????????????????? 可讀寫 可讀寫 可讀寫 可讀寫
LockType?????????????? 可讀寫 可讀寫 可讀寫 可讀寫
MarshalOptions?????? 可讀寫 可讀寫 可讀寫 可讀寫
MaxRecords??????????? 可讀寫 可讀寫 可讀寫 可讀寫
PageCount????????????? 不支援 不支援 唯讀 唯讀
PageSize???????????????? 可讀寫 可讀寫 可讀寫 可讀寫
RecordCount???????? 不支援 不支援 唯讀 唯讀
Source??????????????????? 可讀寫 可讀寫 可讀寫 可讀寫
State????????????????????? 唯讀 唯讀 唯讀 唯讀
Status???????????????????? 唯讀 唯讀 唯讀 唯讀
AddNew?????????????? 支援 支援 支援 支援
CancelBatch??????? ? 支援 支援 支援 支援
CancelUpdate??????? 支援 支援 支援 支援
Clone??????????????????? 不支援 不支援
Close??????????????????? 支援 支援 支援 支援
Delete??????????????????? 支援 支援 支援 支援
GetRows?????????????? 支援 支援 支援 支援
Move?????????????????? 不支援 支援 支援 支援
MoveFirst??????????? ?支援 支援 支援 支援
MoveLast???????????? 不支援 支援 支援 支援
MoveNext??????????? 支援 支援 支援 支援
MovePrevious??????? 不支援 支援 支援 支援
NextRecordset?????? 支援 支援 支援 支援
Open??????????????????? 支援 支援 支援 支援
Requery??????????????? 支援 支援 支援 支援
Resync?????????????????? 不支援 不支援 支援 支援
Supports?????????????? 支援 支援 支援 支援
Update????????????????? 支援 支援 支援 支援
UpdateBatch??????? 支援 支援 支援 支援
--------------------------------------------------------------
其中NextRecordset方法並不適用於Microsoft Access資料庫。
LockType
Recordset對象Open方法的LockType參數表示要採用的Lock類型,如果忽略這個參數,那麼系統會以Recordset對象的LockType屬性為預設值。LockType參數包含adLockReadOnly、adLockPrssimistic、adLockOptimistic及adLockBatchOptimistic等,分述如下:
-------------------------------------------------------------
常數 常數值 說明
--------------------------------------------------------------
adLockReadOnly 1 預設值,Recordset對象以唯讀方式啟動,無法運行AddNew、Update及Delete等方法
adLockPrssimistic 2 當資料來源正在更新時,系統會暫時鎖住其他使用者的動作,以保持資料一致性。
adLockOptimistic 3 當資料來源正在更新時,系統並不會鎖住其他使用者的動作,其他使用者可以對資料進行增、刪、改的操作。
adLockBatchOptimistic 4 當資料來源正在更新時,其他使用者必須將CursorLocation屬性改為adUdeClientBatch才能對資料進行增、
刪、改的操作。