Hinzufügen eines Datensatzes zu einem DAO-Recordset

Mithilfe der AddNew-Methode können Sie einem Recordset-Objekt vom Typ "Tabelle" oder "Dynaset" einen neuen Datensatz hinzufügen.

So fügen Sie einem Recordset-Objekt des Tabellen- oder Dynasettyps einen Datensatz hinzu

  1. Verwenden Sie die AddNew-Methode, um einen Datensatz zu erstellen, der bearbeitet werden kann.

  2. Weisen Sie allen Feldern des Datensatzes Werte zu.

  3. Verwenden Sie die Update-Methode, um den neuen Datensatz zu speichern.

Im folgenden Codebeispiel wird einem Recordset namens "Shippers" vom Typ "Tabelle" ein Datensatz hinzugefügt.

Dim dbsNorthwind As DAO.Database 
Dim rstShippers As DAO.Recordset 
 
   Set dbsNorthwind = CurrentDb 
   Set rstShippers = dbsNorthwind.OpenRecordset("Shippers") 
 
   rstShippers.AddNew 
   rstShippers!CompanyName = "Global Parcel Service" 
      . 
      . ' Set remaining fields. 
      . 
 
   rstShippers.Update 

Wenn Sie die AddNew-Methode verwenden, bereit das Access-Datenbankmodul einen neuen, leeren Datensatz vor und legt diesen als aktuellen Datensatz fest. Wenn Sie die Update-Methode verwenden, um den neuen Datensatz zu speichern, wird der Datensatz, der vor Verwendung der AddNew-Methode aktuell war, wieder der aktuelle Datensatz.

Die Position des neuen Datensatzes in Recordset ist davon abhängig, ob Sie den Datensatz zu einem Recordset-Objekt vom Typ „Dynaset“ oder vom Typ „Tabelle“ hinzugefügt haben. Wenn Sie einen Datensatz zu einem Recordset vom Typ "Dynaset" hinzufügen, wird der neue Datensatz am Ende des Recordsets angezeigt, unabhängig davon, wie der Recordset sortiert ist. Um die Anzeige des neuen Datensatzes an der richtig sortierten Position zu erzwingen, können Sie entweder die Requery -Methode verwenden oder das Recordset -Objekt neu erstellen.

Wenn Sie einen Datensatz zu einem Recordset vom Typ „Tabelle hinzufügen“, wird der Datensatz entsprechend dem aktuellen Index sortiert angezeigt oder am Ende der Tabelle, wenn kein aktueller Index vorhanden ist. Da das Access-Datenbankmodul ermöglicht, dass mehrere Benutzer gleichzeitig Datensätze in einer Tabelle erstellen, wird Ihr Datensatz möglicherweise nicht am Ende von Recordset angezeigt. Verwenden Sie die LastModified-Eigenschaft anstelle der MoveLast-Methode, um zu dem soeben hinzugefügten Datensatz zu wechseln.

Hinweis

Wenn Sie die AddNew-Methode verwenden, um einen Datensatz hinzuzufügen, dann zu einem anderen Datensatz wechseln, oder das Recordset-Objekt schließen, ohne zuerst die Update-Methode zu verwenden, gehen Ihre Änderungen ohne Warnung verloren. So führt z. B. das Auslassen der Update-Methode aus dem vorhergehenden Beispiel zu keinen Änderungen an der Tabelle Versandfirmen.

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.