Move 方法 (ADO)
移动 Recordset 对象中当前记录的位置。
语法
recordset.Move NumRecords, Start
参数
NumRecords
一个有符号 Long 表达式,该表达式指定当前记录位置移动的记录数。
开始
自选。
字符串 值或计算结果为书签的 variant 。 还可以使用 BookmarkEnum 值。
言论
所有 Recordset 对象都支持 Move 方法。
如果 NumRecords 参数大于零,则当前记录位置将向前移动(Recordset末尾)。 如果 NumRecords 小于零,则当前记录位置向后移动(向 Recordset开头)。
如果 移动 调用会将当前记录位置移到第一条记录前的某个点,则 ADO 会将当前记录设置为记录集中第一条记录之前的位置(BOFTrue)。 当 BOF 属性已 True 生成错误时,尝试向后移动。
如果 Move 调用会将当前记录位置移到最后一条记录之后的某个点,则 ADO 会将当前记录设置为记录集中最后一条记录之后的位置(EOFTrue)。 当 EOF 属性已 True 生成错误时,尝试向前移动。
从空 Recordset 对象调用 Move 方法将生成错误。
如果传递 Start 参数,则移动相对于具有此书签的记录,假设 Recordset 对象支持书签。 如果未指定,则移动相对于当前记录。
如果使用 CacheSize 属性从提供程序本地缓存记录,则传递 NumRecords 参数,该参数将当前记录位置移到当前缓存记录组之外,强制 ADO 从目标记录开始检索新记录组。 CacheSize 属性确定新检索的组的大小,目标记录是检索的第一条记录。
如果 Recordset 对象仅向前,则用户仍可以传递小于零的 NumRecords 参数,前提是目标位于当前缓存记录集中。 如果 移动 调用会将当前记录位置移到第一个缓存记录之前记录,将发生错误。 因此,可以使用支持对仅支持向前滚动的提供程序进行完全滚动的记录缓存。 由于缓存的记录被加载到内存中,因此应避免缓存比必要的记录多。 即使仅向前 Recordset 对象支持以这种方式向后移动,对任何仅向前 Recordset 对象调用 MovePrevious 方法仍将生成错误。
注意
不支持在仅向前 Recordset 中向后移动,具体取决于提供程序。 如果当前记录位于 Recordset的最后一条记录之后,移动 可能不会导致正确的当前位置。
适用于
另请参阅
Move 方法示例 (VB)
Move 方法示例 (VBScript)
Move 方法示例 (VC++)
MoveFirst、MoveLast、MoveNext 和 MovePrevious 方法 (ADO)
MoveFirst、MoveLast、MoveNext 和 MovePrevious 方法 (RDS)
MoveRecord 方法 (ADO)