Batch-Move-Fehler verarbeiten

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu TBatchMove verwenden - 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.

Es gibt zwei Fehlertypen, die in einer Batch-Move-Operation auftreten können: Fehler bei der Datentypumwandlung sowie Integritätsverletzungen. Bde.DBTables.TBatchMove besitzt zahlreiche Eigenschaften, die die Fehlerverarbeitung dokumentieren und steuern.

Die Eigenschaft AbortOnProblem legt fest, ob die Operation abgebrochen wird, wenn bei der Datentypumwandlung ein Fehler auftritt. Ist AbortOnProblem gleich True, wird die Batch-Move-Operation abgebrochen, wenn ein Fehler auftritt. Ist sie gleich False, wird die Operation fortgesetzt. Sie können die in ProblemTableName angegebene Tabelle daraufhin auswerten, welche Datensätze Probleme verursacht haben.

Die Eigenschaft AbortOnKeyViol gibt an, ob die Operation abgebrochen werden soll, wenn eine Paradox-Schlüsselverletzung auftritt.

Die Eigenschaft ProblemCount gibt die Anzahl der Datensätze an, die in der Zieltabelle nicht ohne Datenverlust verarbeitet werden konnten. Ist AbortOnProblem gleich True, ist der Wert Eins, weil die Operation abgebrochen wird, sobald ein Fehler auftritt.

Die folgenden Eigenschaften ermöglichen einer Batch-Move-Komponente, zusätzliche Tabellen zu erzeugen, die die Batch-Move-Operation dokumentieren:

  • ChangedTableName erzeugt, falls angegeben, eine lokale Paradox-Tabelle, die alle Datensätze enthält, die sich nach einer Aktualisierungs- oder Löschoperation geändert haben.
  • KeyViolTableName erzeugt, falls angegeben, eine lokale Paradox-Tabelle, die alle Datensätze aus der Quelltabelle enthält, die bei der Arbeit mit einer Paradox-Tabelle eine Schlüsselverletzung verursacht haben. Ist AbortOnKeyViol gleich True, enthält diese Tabelle höchstens einen Eintrag, weil die Operation abgebrochen wird, sobald das erste Problem auftritt.
  • ProblemTableName erzeugt, falls angegeben, eine lokale Paradox-Tabelle, die alle Datensätze enthält, die nicht in die Zieltabelle geschrieben werden konnten, weil bei der Datentypumwandlung ein Fehler aufgetreten ist. Die Tabelle könnte beispielsweise Datensätze aus der Quelltabelle enthalten, deren Daten gekürzt wurden, um in die Zieltabelle zu passen. Ist AbortOnProblem gleich True, enthält diese Tabelle höchstens einen Eintrag, weil die Operation abgebrochen wird, sobald das erste Problem auftritt.

Anmerkung: Ist ProblemTableName nicht angegeben, werden die Daten in dem Datensatz gekürzt und in die Zieltabelle geschrieben.

Siehe auch