Freigeben über


Move-Methode (ADO)

Gilt für: Access 2013, Office 2013

Verschiebt die Position des aktuellen Datensatzes in einem Recordset-Objekt.

Syntax

recordset. NumRecords verschieben, Start

Parameter

Parameter Beschreibung
NumRecords Ein signierter Long -Ausdruck, der die Anzahl von Datensätzen angibt, um die die aktuelle Position des Datensatzes verschoben wird.
Start Optional. Ein String -Wert oder ein Variant -Wert, der eine Textmarke ergibt. Sie können auch einen BookmarkEnum-Wert verwenden.

Hinweise

Die Move-Methode wird für alle Recordset-Objekte unterstützt.

Wenn das Argument NumRecords größer als null ist, wird die aktuelle Datensatzposition vorwärts verschoben (zum Ende des Recordset-Objekts hin). Wenn NumRecords kleiner als null ist, wird die aktuelle Datensatzposition rückwärts verschoben (zum Anfang des Recordset-Objekts hin).

Wenn der Move-Aufruf die aktuelle Datensatzposition an einen Punkt vor dem ersten Datensatz verschieben würde, legt ADO den aktuellen Datensatz auf die Position vor dem ersten Datensatz im Recordset fest (BOF ist True). Beim Versuch, den Datensatz nach hinten zu verschieben, wenn die BOF -Eigenschaft bereits auf True festgelegt ist, wird ein Fehler generiert.

Wenn die aktuelle Position des Datensatzes beim Aufrufen von Move an eine Stelle hinter dem letzten Datensatz verschoben werden würde, legt ADO den aktuellen Datensatz auf die Position nach dem letzten Datensatz in der Datensatzgruppe fest (EOF ist True). Beim Versuch, den Datensatz nach vorn zu verschieben, wenn die EOF-Eigenschaft bereits auf True festgelegt ist, wird ein Fehler generiert.

Beim Aufrufen der Move -Methode aus einem leeren Recordset -Objekt wird ein Fehler generiert.

Wenn Sie das Argument Start übergeben, ist die Verschiebung relativ zum Datensatz mit dieser Textmarke, wobei davon ausgegangen wird, dass das Recordset-Objekt Textmarken unterstützt. Ist es nicht angegeben, ist die Verschiebung relativ zum aktuellen Datensatz.

Falls Sie mithilfe der CacheSize-Eigenschaft Datensätze vom Anbieter lokal zwischenspeichern, wird durch das Übergeben eines Arguments NumRecords, mit dem die aktuelle Datensatzposition außerhalb der aktuellen Gruppe zwischengespeicherter Datensätze verschoben wird, ADO gezwungen, eine neue Datensatzgruppe ausgehend vom Zieldatensatz abzurufen. Die CacheSize-Eigenschaft bestimmt die Größe der neu abgerufenen Gruppe, und der Zieldatensatz ist der erste abgerufene Datensatz.

Ist das Recordset-Objekt vorwärtsgerichtet, kann der Benutzer auch ein Argument NumRecords übergeben, das kleiner als 0 (Null) ist, wenn sich das Ziel innerhalb der aktuellen Gruppe der zwischengespeicherten Datensätze befindet. Wenn die aktuelle Position des Datensatzes beim Aufrufen von Move auf einen Datensatz vor dem ersten zwischengespeicherten Datensatz verschoben wird, tritt ein Fehler auf. Daher können Sie statt einem Anbieter, der nur einen vorwärtsgerichteten Bildlauf unterstützt, einen Datensatzcache verwenden, der einen vollständigen Bildlauf unterstützt. Da zwischengespeicherte Datensätze in den Speicher geladen werden, sollten Sie nur so viele Datensätze wie erforderlich zwischenspeichern. Selbst wenn ein vorwärtsgerichtetes Recordset -Objekt rückwärtsgerichtete Verschiebungen dieser Art unterstützt, wird beim Aufrufen der MovePrevious-Methode für ein vorwärtsgerichtetes Recordset -Objekt ein Fehler generiert.

Hinweis

[!HINWEIS] Ob in einem vorwärtgerichteten Recordset -Objekt rückwärtgerichtete Verschiebungen unterstützt werden, hängt vom Anbieter ab. Wenn der aktuelle Datensatz hinter dem letzten Datensatz im Recordset -Objekt positioniert wurde, wird bei einer rückwärtsgerichteten Verschiebung mithilfe von Move möglicherweise nicht die richtige aktuelle Position erzielt.