Freigeben über


Recordset: Datensatzaktualisierung durch Recordsets (ODBC)

Dieses Thema bezieht sich auf die MFC-ODBC-Klassen.

Neben der Möglichkeit, Datensätze aus einer Datenquelle auszuwählen, können Recordsets die ausgewählten Datensätze aktualisieren oder löschen oder neue Datensätze hinzufügen. Drei Faktoren bestimmen die Aktualisierungsfähigkeit eines Recordsets: Ob die verbundene Datenquelle aktualisiert werden kann, die Optionen, die Sie beim Erstellen eines Recordsetobjekts angeben, und die sql, die erstellt wird.

Hinweis

Die SQL,auf der Ihr CRecordset Objekt basiert, kann sich auf die Aktualisierung des Recordsets auswirken. Wenn Ihre SQL z. B. eine Verknüpfung oder eine GROUP BY-Klausel enthält, legt MFC die Aktualisierungsfähigkeit auf FALSE fest.

Hinweis

Dieses Thema bezieht sich auf von CRecordset abgeleitete Objekte, in denen das gesammelte Abrufen von Zeilen nicht implementiert wurde. Wenn Sie massenweises Abrufen von Zeilen verwenden, lesen Sie "Recordset: Fetching Records in Bulk (ODBC)".

In diesem Thema wird Folgendes erläutert:

Recordset: How AddNew, Edit, and Delete Work (ODBC) beschreibt die Aktionen dieser Funktionen aus sicht des Recordsets.

Recordset: Weitere Informationen zu Updates (ODBC) schließt den Datensatzaktualisierungsabschnitt ab, indem erläutert wird, wie Sich Transaktionen auf Updates auswirken, wie sich das Schließen eines Recordsets oder bildlaufs auf aktuelle Updates auswirkt und wie Ihre Updates mit den Updates anderer Benutzer interagieren.

Ihre Rolle beim Aktualisieren des Recordsets

Die folgende Tabelle zeigt Ihre Rolle bei der Verwendung von Recordsets zum Hinzufügen, Bearbeiten oder Löschen von Datensätzen zusammen mit dem, was das Framework für Sie tut.

Recordset-Aktualisierung: Sie und das Framework

Für Das Framework
Bestimmen Sie, ob die Datenquelle aktualisiert werden kann (oder anfügebar). Stellt CDatabase-Memberfunktionen zum Testen der Aktualisierungs- oder Anfügebarkeit der Datenquelle zur Anwendung.
Öffnen Sie ein aktualisierbares Recordset (beliebiger Typ).
Bestimmen Sie, ob das Recordset aktualisierbar ist, indem Sie CRecordset Aktualisierungsfunktionen wie CanUpdate oder CanAppend.
Rufen Sie Recordset-Memberfunktionen auf, um Datensätze hinzuzufügen, zu bearbeiten und zu löschen. Verwaltet die Mechanismen des Austauschs von Daten zwischen dem Recordset-Objekt und der Datenquelle.
Verwenden Sie optional Transaktionen, um den Aktualisierungsprozess zu steuern. Stellt CDatabase Memberfunktionen zur Unterstützung von Transaktionen bereit.

Weitere Informationen zu Transaktionen finden Sie unter Transaction (ODBC).For more information about transactions, see Transaction (ODBC).

Der Bearbeitungspuffer

Zusammen dienen die Felddatenmember eines Recordsets als Bearbeitungspuffer, der einen Datensatz enthält – den aktuellen Datensatz. Aktualisierungsvorgänge verwenden diesen Puffer, um mit dem aktuellen Datensatz zu arbeiten.

  • Wenn Sie einen Datensatz hinzufügen, wird der Bearbeitungspuffer verwendet, um einen neuen Datensatz zu erstellen. Wenn Sie mit dem Hinzufügen des Datensatzes fertig sind, wird der datensatz, der zuvor aktuell war, wieder aktuell.

  • Wenn Sie einen Datensatz aktualisieren (bearbeiten), wird der Bearbeitungspuffer verwendet, um die Felddatenmember des Recordsets auf neue Werte festzulegen. Wenn Sie die Aktualisierung abgeschlossen haben, ist der aktualisierte Datensatz immer noch aktuell.

Wenn Sie AddNew oder Edit aufrufen, wird der aktuelle Datensatz gespeichert, damit er später nach Bedarf wiederhergestellt werden kann. Wenn Sie "Delete" aufrufen, wird der aktuelle Datensatz nicht gespeichert, sondern als gelöscht markiert, und Sie müssen zu einem anderen Datensatz scrollen.

Hinweis

Der Bearbeitungspuffer spielt keine Rolle beim Löschen von Datensätzen. Wenn Sie den aktuellen Datensatz löschen, wird der Datensatz als gelöscht markiert, und das Recordset befindet sich "nicht in einem Datensatz", bis Sie zu einem anderen Datensatz scrollen.

Dynasets und Momentaufnahmen

Dynasets aktualisieren den Inhalt eines Datensatzes, während Sie zum Datensatz scrollen. Momentaufnahmen sind statische Darstellungen der Datensätze, sodass der Inhalt eines Datensatzes nur aktualisiert wird, wenn Sie Requery aufrufen. Um alle Funktionen von Dynasets zu verwenden, müssen Sie mit einem ODBC-Treiber arbeiten, der der richtigen Ebene der ODBC-API-Unterstützung entspricht. Weitere Informationen finden Sie unter ODBC und Dynaset.

Siehe auch

Recordset (ODBC)
Recordset: Funktionsweise von AddNew, Edit und Delete (ODBC)