Aktualisierungen mit der BDE zwischenspeichern
Nach oben zu Aktualisierungen mit der BDE zwischenspeichern - Index
Hinweis: Die Borland Database Engine (BDE) ist veraltet und wird nicht mehr weiterentwickelt. Die BDE wird Unicode beispielsweise nie unterstützen. Sie sollten mit der BDE keine neuen Entwicklungen vornehmen. Überprüfen Sie, ob Sie Ihre vorhandenen Datenbankanwendungen nicht von der BDE nach dbExpress migrieren können. Weitere Informationen zum Migrieren von der BDE nach dbExpress finden Sie unter http://www.embarcadero.com/rad-in-action/migration-upgrade-center.
Es empfiehlt sich, zum Zwischenspeichern von Aktualisierungen eine Client-Datenmenge (TBDEClientDataSet) zu verwenden oder die BDE-Datenmenge mithilfe eines Datenmengen-Providers mit einer Client-Datenmenge zu verbinden. Die Vorteile bei der Verwendung einer Client-Datenmenge werden unter Mithilfe einer Client-Datenmenge Aktualisierungen zwischenspeichern erläutert.
In einfacheren Fällen können Sie jedoch stattdessen auch die BDE zum Zwischenspeichern von Aktualisierungen verwenden. BDE-Datenmengen und TDatabase-Komponenten enthalten die dafür notwendigen Eigenschaften, Methoden und Ereignisbehandlungen. Die meisten entsprechen genau jenen Eigenschaften, Methoden und Ereignissen, die Sie für Client-Datenmengen benutzen, wenn Sie eine Client-Datenmenge zum Zwischenspeichern von Aktualisierungen einsetzen. In der folgenden Tabelle werden diese Eigenschaften, Ereignisse und Methoden und die entsprechenden Eigenschaften, Methoden und Ereignisse des TBDEClientDataSet aufgeführt:
Eigenschaften, Methoden und Ereignisse für zwischengespeicherte Aktualisierungen
Für BDE- Datenmengen (oder TDatabase) | Für TBDEClientDataSet | Beschreibung |
---|---|---|
Nicht erforderlich bei Client-DataSets, die Aktualisierungen grundsätzlich zwischenspeichern. |
Legt fest, ob das Zwischenspeichern von Aktualisierungen für die Datenmenge in Kraft ist. | |
Verwenden Sie die Ereignisbehandlung BeforeUpdateRecord, oder, falls Sie TClientDataSet benutzen, die Eigenschaft UpdateObject für die BDE-fähige Quell-Datenmenge. |
Gibt das Aktualisierungsobjekt für eine Aktualisierung von Read-Only-Datenmengen an. | |
Gibt an, ob der lokale Cache aktualisierte Datensätze enthält, die auf die Datenbank angewendet werden müssen. | ||
Gibt an, welche aktualisierten Datensätze sichtbar gemacht werden sollen, wenn zwischengespeicherte Aktualisierungen angewendet werden. | ||
Gibt an, ob ein Datensatz unverändert, verändert, eingefügt oder gelöscht wurde. | ||
Ein Ereignis für die Verarbeitung von Aktualisierungsfehlern für einzelne Datensätze. | ||
N/A |
Ereignis zur datensatzweisen Verarbeitung von Aktualisierungen. | |
ApplyUpdates (Datenbank) |
Wendet Datensätze aus dem lokalen Cache auf die Datenbank an. | |
Entfernt alle nicht ausgeführten Aktualisierungen aus dem lokalen Zwischenspeicher ohne diese zuzuweisen. | ||
Löscht den Aktualisierungs-Cache, nachdem die Aktualisierungen erfolgreich angewendet wurden. | ||
GetNextPacket (und PacketRecords) |
Kopiert Datensätze aus der Datenbank in den lokalen Cache, wo sie bearbeitet und aktualisiert werden können. | |
Macht Aktualisierungen am aktuellen Datensatz rückgängig, falls diese noch nicht angewendet wurden. |
Einen Überblick zum Verfahren bei zwischengespeicherten Aktualisierungen finden Sie unter Zwischengespeicherte Aktualisierungen: Überblick.
Die folgenden Themen beschreiben detailliert, wie mit der BDE Aktualisierungen zwischengespeichert werden können:
- BDE-basiertes Zwischenspeichern von Aktualisierungen.
- BDE-basierte, zwischengespeicherte Aktualisierungen anwenden.
- Eine Datenmenge mit Aktualisierungsobjekten aktualisieren.
Hinweis: Auch wenn Sie eine Client-Datenmengen zum Zwischenspeichern von Aktualisierungen verwenden, ist möglicherweise der Abschnitt über Aktualisierungsobjekte von Interesse für Sie. Sie können Aktualisierungsobjekte in der Ereignisbehandlung BeforeUpdateRecord des TBDEClientDataSet oder des TDataSetProvider dazu benutzen, Aktualisierungen aus gespeicherten Prozeduren oder Abfragen für mehrere Tabellen auszuführen..