ABRUFOPTIONEN

Gültig für

Extrahieren

Beschreibung

Mit dem Parameter FETCHOPTIONS können Sie bestimmte Aspekte der Art und Weise steuern, wie Oracle GoldenGate Daten in den folgenden Fällen abruft:

FETCHOPTIONS ist tabellenspezifisch. Eine FETCHOPTIONS-Anweisung gilt für alle nachfolgenden TABLE-Anweisungen, bis eine andere FETCHOPTIONS-Anweisung gefunden wird.

Standardabrufeigenschaften sind für die meisten Installationen ausreichend.

Standard

Fehlende Zeilen ignorieren und Verarbeitung fortsetzen

Syntax

FETCHOPTIONS
[, FETCHPKUPDATECOLS]
[, MISSINGCOLS]
[, INCONSISTENTROW <action>]
[, MAXFETCHSTATEMENTS <number>]
[, MISSINGROW <action>]
[, NOFETCH]
[, SUPPRESSDUPLICATES]
[, USEKEY | NOUSEKEY]
[, USELATESTVERSION | NOUSELATESTVERSION]
[, USESNAPSHOT | NOUSESNAPSHOT]
[, USEROWID | NOUSEROWID]

FETCHPKUPDATECOLS

Ruft alle nicht verfügbaren Spalten ab, wenn ein Primärschlüssel aktualisiert wird. Diese Option ist standardmäßig deaktiviert. Wenn diese Option deaktiviert ist, wird der Spaltenabruf gemäß anderen FETCHOPTIONS-Optionen ausgeführt, die aktiviert sind.

Wenn diese Option aktiviert ist, wird sie nur bei einer Aktualisierung einer Primärschlüsselspalte wirksam. Die Ergebnisse sind mit (*) in der TABLE-Anweisung identisch. LOB-Spalten sind im Fetch enthalten.

Verwenden Sie diesen Parameter, wenn Sie HANDLECOLLISIONS. verwenden Wenn Replicat eine fehlende Aktualisierung erkennt, sind alle Spalten verfügbar, um die Aktualisierung in eine Einfügung zu verwandeln.

MISSINGCOLS

Ruft alle fehlenden Spalten aus Aktualisierungs- und Löschvorgängen ab, einschließlich LOB-Spalten. Diese Option ist nur für Oracle AI Database gültig. Es kann sich negativ auf die Datenbank und die Extract-Performance auswirken, da zusätzliche Abfragen zum Abrufen der Daten erforderlich sind. Insbesondere, wenn große LOB-Werte abgerufen und in den Trail geschrieben werden müssen.

Die Einstellung dieses Parameters entspricht der Einstellung der folgenden Parameter:

MISSINGCOLS(*) in the TABLE statement
NOCOMPRESSDELETES FETCHMISSINGCOLS
GETUPDATEBEFORES
NOCOMPRESSUPDATES
LOGALLSUPCOLS

Beim Festlegen von FETCHOPTIONS MISSINGCOLS ist jedoch ein Konflikt mit den folgenden Parametern aufgetreten:

FETCHOPTIONS NOFETCH
FETCHOPTIONS FETCHPKUPDATECOLS
COMPRESSDELETES
COMPRESSUPDATES
GETUPDATEBEFORES
LOGALLSUPCOLS

INCONSISTENTROW <action>

Gibt an, dass Spaltendaten erfolgreich nach Zeile ID abgerufen wurden, der Schlüssel jedoch nicht übereinstimmend. Entweder wurde die Zeile ID wiederverwendet, oder nach diesem Vorgang (und vor dem Abruf) ist eine Primärschlüsselaktualisierung aufgetreten.

<action> kann einer der Folgenden sein:

ALLOW

Bedingung zulassen und Verarbeitung fortsetzen

IGNORE

Die Bedingung ignorieren und mit der Verarbeitung fortfahren. Dies ist die standardmäßige Einstellung.

REPORT

Melden Sie die Bedingung und den Inhalt der Zeile der Discard-Datei, aber fahren Sie mit der Verarbeitung der Teilzeile fort.

DISCARD

Verwerfen Sie die Daten, und verarbeiten Sie die Teilzeile nicht.

ABEND

Daten verwerfen und Verarbeitung beenden

MAXFETCHSTATEMENTS <number>

Steuert die maximal zulässige Anzahl vorbereiteter Abfragen, die von Extract zum Abrufen von Zeilendaten aus einer Quelldatenbank verwendet werden können. Die abgerufenen Daten werden verwendet, wenn nicht genügend Informationen zum Erstellen einer logischen SQL-Anweisung aus einem Transaktionslogdatensatz verfügbar sind. Abfragen werden nach Bedarf vorbereitet und gecacht. Wenn der mit MAXFETCHSTATEMENTS festgelegte Wert erreicht ist, wird die älteste Abfrage durch die neueste ersetzt. Der Wert dieses Parameters steuert die Anzahl der offenen Cursor, die von Extract nur für Abrufabfragen verwaltet werden. Zusätzliche Cursor können von Extract für andere Zwecke verwendet werden, wie sie für gespeicherte Prozeduren erforderlich sind. Dieser Parameter ist nur für Oracle AI Database gültig. Der Standardwert ist 100 Anweisungen. Stellen Sie sicher, dass die Datenbank die angegebene Anzahl von Cursorn sowie Cursor unterstützen kann, die von anderen Anwendungen und Prozessen verwendet werden.

MISSINGROW <action>

Gibt eine Antwort an, wenn Oracle GoldenGate eine abzurufende Zeile nicht finden kann, sodass nur ein Teil der Zeile (die geänderten Werte) zur Verarbeitung verfügbar ist. In der Regel kann keine Zeile gefunden werden, weil sie zwischen dem Zeitpunkt der Erstellung des Änderungsdatensatzes und dem Zeitpunkt, zu dem der Abruf ausgelöst wurde, gelöscht wurde oder weil das erforderliche Zeilenimage älter war als die Undo-Aufbewahrungsspezifikation.

<action> kann einer der folgenden Werte sein:

ALLOW

Bedingung zulassen und Verarbeitung fortsetzen Dies ist die standardmäßige Einstellung.

IGNORE

Die Bedingung ignorieren und mit der Verarbeitung fortfahren.

REPORT

Melden Sie die Bedingung und den Inhalt der Zeile der Discard-Datei, aber fahren Sie mit der Verarbeitung der Teilzeile fort.

DISCARD

Verwerfen Sie die Daten, und verarbeiten Sie die Teilzeile nicht.

ABEND

Daten verwerfen und Verarbeitung beenden

NOFETCH

Verhindert, dass Extract die Spalte aus der Datenbank abruft. Diese Option ist standardmäßig deaktiviert. Extract schreibt den Datensatz in den Trail, fügt jedoch ein Token ein, das angibt, dass die Spalte fehlt.

SUPPRESSDUPLICATES

Gültig für Oracle. Verhindert, dass Ziel-Tablespaces zu groß werden, wenn Aktualisierungen an LOB-Spalten vorgenommen werden. Standardmäßig ist SUPPRESSDUPLICATES auf "Off" gesetzt. Beispiel: Nach der Replikation wird ein Quell-Tablespace von 232 MB zu einem Ziel-Tablespace von 7.52GB.

USEKEY NOUSEKEY

Bestimmt, ob Oracle GoldenGate den Primärschlüssel verwendet, um die abzurufende Zeile zu suchen.

Wenn sowohl USEKEY als auch USEROWID angegeben sind, hat ROWID Priorität für einen schnelleren Zugriff auf den Datensatz. USEROWID ist der Standardwert.

USELATESTVERSION NOUSELATESTVERSION

Gültig für Oracle. Verwenden Sie USESNAPSHOT. Der Standardwert USELATESTVERSION weist Extract an, Daten aus der Quelltabelle abzurufen, wenn er nicht aus dem Undo Tablespace abgerufen werden kann. NOUSELATESTVERSION weist Extract an, die Bedingung zu ignorieren, wenn der Snapshot-Abruf nicht erfolgreich verläuft, und die Verarbeitung fortzusetzen.

Um eine alternative Aktion bereitzustellen, wenn ein Snapshot-Abruf nicht erfolgreich verläuft, verwenden Sie die Option MISSINGROW.

USESNAPSHOT NOUSESNAPSHOT

Gültig für Oracle. Bei der Standardeinstellung, USESNAPSHOT, verwendet Extract das Oracle Flashback-Verfahren, um bestimmte Vorgänge wiederherzustellen, die erforderlich sind, um bestimmte Vorgänge wiederherzustellen, die nicht vollständig aus dem Redo-Datensatz erfasst werden können. Mit NOUSESNAPSHOT ruft Extract die erforderlichen Daten aus der Quelltabelle anstelle der Flashbacklogs ab.

USEROWID NOUSEROWID

Gültig für Oracle. Bestimmt, ob Oracle GoldenGate die Zeile ID verwendet, um die abzurufende Zeile zu suchen.

Wenn sowohl USEKEY als auch USEROWID angegeben sind, hat ROWID Priorität für einen schnelleren Zugriff auf den Datensatz. USEROWID ist der Standardwert.

Beispiele

Beispiel 1

Im Folgenden wird Extract angewiesen, Daten mit Flashback Query abzurufen und die Bedingung zu ignorieren und den Datensatz weiter zu verarbeiten, wenn der Abruf fehlschlägt.

FETCHOPTIONS USESNAPSHOT, NOUSELATESTVERSION

Beispiel 2

MAXFETCHSTATEMENTS 150

Beispiel 3

Im Folgenden wird Extract angewiesen, Daten mit Flashback Query abzurufen, und Extract wird abgebrochen, wenn die Daten nicht verfügbar sind.

FETCHOPTIONS USESNAPSHOT, NOUSELATESTVERSION, MISSINGROW ABEND