移動 Recordset 對象中當(dāng)前記錄的位置。
語法
recordset.Move NumRecords, Start
參數(shù)
NumRecords 帶符號長整型表達(dá)式,指定當(dāng)前記錄位置移動的記錄數(shù)。
Start 可選,字符串或變體型,用于計算書簽。也可為下列 BookmarkEnum 值之一:
常量 |
說明 |
AdBookmarkCurrent |
默認(rèn)。從當(dāng)前記錄開始。 |
AdBookmarkFirst |
從首記錄開始。 |
AdBookmarkLast |
從尾記錄開始。 |
說明
所有 Recordset 對象都支持 Move 方法。
如果 NumRecords 參數(shù)大于零,則當(dāng)前記錄位置將向前移動(向記錄集的末尾)。如果 NumRecords 小于零,則當(dāng)前記錄位置向后移動(向記錄集的開始)。
如果 Move 調(diào)用將當(dāng)前記錄位置移動到首記錄之前,則 ADO 將當(dāng)前記錄放置在記錄集(BOF 為 True)的首記錄之前。在 BOF 屬性已經(jīng)為 True 時試圖向后移動將產(chǎn)生錯誤。
如果 Move 調(diào)用將當(dāng)前記錄位置移動到尾記錄之后,則 ADO 將當(dāng)前記錄放置在記錄集(EOF 為 True)的尾記錄之后。在 EOF 屬性已經(jīng)為 True 時試圖向前移動將產(chǎn)生錯誤。
從空的 Recordset 對象調(diào)用 Move 方法將產(chǎn)生錯誤。
如果傳送 Start 參數(shù),則移動相對于該書簽的記錄(假定 Recordset 對象支持書簽)。如果沒有指定,則移動相對于當(dāng)前記錄。
如果使用 CacheSize 屬性在本地緩存來自提供者的記錄,則在傳送將當(dāng)前記錄位置移動到當(dāng)前緩存的記錄組之外的 NumRecords 參數(shù)時, ADO 將不得不從目標(biāo)記錄開始檢索新的記錄組。CacheSize 屬性決定新檢索記錄組的大小,而目標(biāo)記錄是檢索到的第一個記錄。
如果 Recordset 對象是僅向前的,則用戶仍然可以傳送小于零的 NumRecords 參數(shù)(只要目標(biāo)在已緩存記錄的當(dāng)前集合中)。如果 Move 調(diào)用將當(dāng)前記錄位置移動到第一個已緩存記錄的前一個記錄,將產(chǎn)生錯誤。因此可使用記錄緩存,它在支持僅向前滾動的提供者上支持完全滾動。由于緩存的記錄將加載到內(nèi)存,因此應(yīng)避免不必要地緩存過多記錄。即使僅向前 Recordset 對象支持這種方式的向后移動,在任何僅向前的 Recordset 對象上調(diào)用 MovePrevious 方法仍將產(chǎn)生錯誤。