Freigeben über


UpdateBatch-Methode

Schreibt alle ausstehenden Batchupdates auf den Datenträger.

Syntax

  
recordset.UpdateBatch AffectRecords, PreserveStatus  

Parameter

AffectRecords
Optional. Ein AffectEnum-Wert, der angibt, wie viele Datensätze von der UpdateBatch-Methode betroffen sein werden.

PreserveStatus
Optional. Ein boolescher Wert, der angibt, ob lokale Änderungen, wie durch die Status-Eigenschaft angegeben, committet werden sollen oder nicht. Wenn dieser Wert auf True festgelegt ist, bleibt die Status-Eigenschaft jedes Datensatzes unverändert, nachdem das Update abgeschlossen wurde.

Bemerkungen

Verwenden Sie die UpdateBatch-Methode beim Ändern eines Recordset-Objekts im Batchupdatemodus, um alle an einem Recordset-Objekt vorgenommenen Änderungen an die zugrunde liegende Datenbank zu übertragen.

Wenn das Recordset-Objekt Batchaktualisierungen unterstützt, können Sie mehrere Änderungen an einem oder mehreren Datensätzen lokal zwischenspeichern, bis Sie die UpdateBatch-Methode aufrufen. Wenn Sie den aktuellen Datensatz bearbeiten oder einen neuen Datensatz hinzufügen, wenn Sie die UpdateBatch-Methode aufrufen, ruft ADO automatisch die Update-Methode auf, um alle ausstehenden Änderungen an dem aktuellen Datensatz zu speichern, bevor der Batch mit den Änderungen an den Anbieter übertragen wird. Sie sollten das Batchupdate nur mit einem Keyset oder einem statischen Cursor verwenden.

Hinweis

Das Angeben von adAffectGroup als Wert für diesen Parameter führt zu einem Fehler, wenn keine sichtbaren Datensätze im aktuellen Recordset vorhanden sind (z. B. ein Filter, für den keine Datensätze übereinstimmen).

Wenn der Versuch, Änderungen für einen oder alle Datensätze zu übertragen, aufgrund eines Konflikts mit den zugrunde liegenden Daten fehlschlägt (z. B. weil ein Datensatz bereits von einem anderen Benutzer gelöscht wurde), gibt der Anbieter Warnungen an die Errors-Auflistung zurück, und ein Laufzeitfehler tritt auf. Verwenden Sie die Filter-Eigenschaft (adFilterAffectedRecords) und die Status-Eigenschaft, um Datensätze mit Konflikten zu suchen.

Um alle ausstehenden Batchupdates abzubrechen, verwenden Sie die CancelBatch-Methode.

Wenn die dynamischen Eigenschaften Unique Table und Update Resync festgelegt sind und das Recordset das Ergebnis der Ausführung eines JOIN-Vorgangs mit mehreren Tabellen ist, folgt implizit auf die Ausführung der UpdateBatch-Methode die Resync-Methode, abhängig von den Einstellungen der Update Resync-Eigenschaft.

Die Reihenfolge, in der die einzelnen Updates eines Batchs für die Datenquelle ausgeführt werden, entspricht nicht notwendigerweise der Reihenfolge, in der sie für das lokale Recordset ausgeführt wurden. Die Aktualisierungsreihenfolge hängt vom Anbieter ab. Berücksichtigen Sie dies bei der Programmierung von Updates, die in Wechselbeziehung zueinander stehen, z. B. Fremdschlüsseleinschränkungen für ein Einfügen oder Aktualisieren.

Gilt für

Recordset-Objekt (ADO)

Weitere Informationen

UpdateBatch- und CancelBatch-Methode – Beispiel (VB)
UpdateBatch- und CancelBatch-Methode – Beispiel (VC++)
CancelBatch-Methode (ADO)
Clear-Methode (ADO)
LockType-Eigenschaft (ADO)
Update-Methode