MoveFirst、MoveLast、MoveNext 和 MovePrevious 方法 (ADO)
移至指定之 Recordset 物件中的第一筆、最後一筆、下一筆或上一筆記錄,並將該記錄設為當前記錄。
語法
recordset.{MoveFirst | MoveLast | MoveNext | MovePrevious}
言論
使用 MoveFirst 方法,將當前記錄位置移至 Recordset中的第一筆記錄。
使用 MoveLast 方法,將當前記錄位置移至 Recordset中的最後一筆記錄。 Recordset 對象必須支援書籤或向後游標移動;否則,方法呼叫會產生錯誤。
當 Recordset 為空白時,呼叫 moveFirst 或 MoveLast 時(BOF 和 EOF 為 True)會產生錯誤。
使用 MoveNext 方法,將當前記錄位置往前移動一筆記錄(朝 Recordset底部移動)。 如果最後一筆記錄是當前記錄,而且您呼叫 MoveNext 方法,則ADO會將當前記錄設定為 Recordset 中最後一筆記錄之後的位置(EOFTrue)。 當 EOF 屬性已經 True 時,嘗試向前移動, 會產生錯誤。
在 ADO 2.5 和更新版本中,當 Recordset 已篩選或排序,且當前記錄的數據已變更時,呼叫 MoveNext 方法會將游標前移兩筆記錄從當前記錄向前移動。 這是因為當當前記錄變更時,下一筆記錄會變成新的當前記錄。 在變更之後呼叫 MoveNext 會將游標從新的當前記錄向前移動一筆記錄。 這與 ADO 2.1 和更早版本中的行為不同。 在這些舊版中,變更已排序或篩選 Recordset 中目前記錄的數據, 不會變更當前記錄的位置,MoveNext 將游標移至當前記錄之後的下一筆記錄。
使用 MovePrevious 方法,將當前記錄位置向後移動一筆記錄(朝 Recordset頂端移動)。 Recordset 對象必須支援書籤或向後游標移動;否則,方法呼叫會產生錯誤。 如果第一筆記錄是當前記錄,而且您呼叫 MovePrevious 方法,則 ADO 會將當前記錄設定為 Recordset 中第一筆記錄之前的位置(BOF為 true)。 當 BOF 屬性已經 True 產生錯誤時,嘗試向後移動。 如果 Recordset 物件不支援書籤或向後游標移動,MovePrevious 方法會產生錯誤。
如果 Recordset 只向前移動,而且您想要同時支援向前和向後捲動,您可以使用 CacheSize 屬性來建立記錄快取,以支援透過 Move 方法的回溯數據指標移動。 由於快取的記錄會載入記憶體中,因此您應該避免快取比必要更多的記錄。 您可以在正向 Recordset 物件中呼叫 MoveFirst 方法;這樣做可能會導致提供者重新執行產生 Recordset 物件的命令。
適用於
另請參閱
MoveFirst、MoveLast、MoveNext 和 MovePrevious 方法範例 (VB)
MoveFirst、MoveLast、MoveNext 和 MovePrevious 方法範例 (VBScript)
MoveFirst、MoveLast、MoveNext 和 MovePrevious 方法範例 (VC++)
Move 方法 (ADO)
MoveFirst、MoveLast、MoveNext 和 MovePrevious 方法 (RDS)
MoveRecord 方法 (ADO)