Konfigurieren der Fehlerbehandlung in „Write to DB“

Der „Write to DB“-Schritt hat einen Fehlerport, der Ihnen ermöglicht, Datensätze herauszufiltern, die Datenbankfehler verursachen, wenn der Datensatz in eine Datenbank geschrieben wird, etwa ein Verstoß bei einer Primärschlüsseleinschränkung oder bei einer eindeutigen Einschränkung. Diese Datensätze können dann in einem anderen Pfad im Datenfluss weitergeleitet werden, während andere Datensätze erfolgreich übergeben werden. Beispiel: Wenn Sie 100 Datensätze verarbeiten und die Datensätze 4, 23 und 56 einen Datenbankfehler verursachen, würden diese drei Datensätze über den Fehlerport weitergeleitet, während die anderen 97 Datensätze an die Datenbank übergeben würden.

Anmerkung: Sie können den Fehlerport verwenden, müssen es aber nicht. Wenn Sie ihn nicht verwenden, schlägt der Auftrag fehl, wenn ein beliebiger Datensatz einen Fehler verursacht.
  1. Wählen Sie in der Palette den Typ des Schrittes zur Verarbeitung von Datensätzen mit Fehlern aus (z. B. „Write to File“) und ziehen Sie den Schritt auf die Arbeitsfläche. Sie haben mehrere Optionen zum Auswählen eines Schrittes:
    • Möchten Sie fehlgeschlagene Datensätze in eine Datei schreiben, ziehen Sie einen der folgenden Schritte auf die Arbeitsfläche: „Write to File“, „Write to XML“ oder „Write to Variable Format File“.
    • Um fehlgeschlagene Datensätze einfach zu löschen, ziehen Sie „Write to Null“ auf die Arbeitsfläche.
  2. Verbinden Sie den Fehlerport bei „Write to DB“ mit dem Schritt, der fehlgeschlagene Datensätze verarbeiten soll.

    Das folgende Beispiel zeigt den Fehlerport bei „Write to DB“ verbunden mit einem „Write to File“-Schritt. In diesem Beispiel werden Datensätze, die beim Schreiben in die Datenbank einen Fehler verursachen, stattdessen in die im „Write to File“-Schritt angegebene Datei geschrieben.

Wenn Sie den Datenfluss ausführen, werden Datensätze, die einen Fehler verursachen, über den Fehlerport weitergeleitet. Die Datensätze vom Fehlerport enthalten die in „Write to DB“ angegebenen Felder sowie zusätzlich die folgenden Felder:

Error.code
Dieses Feld enthält den numerischen von der Datenbank zurückgegebenen Fehlercode. Beispiel: Beim Fehler ORA-00001: unique constraint ANKUSH.SYS_C0010018) violated wäre der Wert im Feld „Error.code“ 1. Eine Liste der Fehlercodes finden Sie in der Dokumentation Ihrer Datenbanksoftware.
Error.Message
Dieses Feld enthält die von der Datenbank zurückgegebene Fehlermeldung. Beispiel: ORA-01034 ORACLE not available. In diesem Fall wäre ORACLE not available der Wert im Feld „Error.Message“. Eine Liste der Fehlermeldungen finden Sie in der Dokumentation Ihrer Datenbanksoftware.
Error.SQLState
Dieses Feld enthält den SQLSTATE-Code, der ausführliche Informationen über die Ursache des Fehlers bereitstellt. Eine Liste der SQLSTATE-Codes finden Sie in der Dokumentation Ihrer Datenbanksoftware.
Zeitstempel
Das Datum und die Uhrzeit auf dem Spectrum™ Technology Platform-Server, als der Fehler auftrat.
Benutzername
Der Name des Spectrum™ Technology Platform-Benutzers, der den Datenfluss ausgeführt hat.