Tabelle für Replicat
Gültig für
Replicat
Beschreibung
Verwenden Sie den Parameter TABLE in einer Replicat-Parameterdatei, um Filterregeln anzugeben, die einen Datensatz aus dem Trail qualifizieren, damit er für eine Ereignisaktion ausgewählt werden kann, die mit EVENTACTIONS angegeben wird.
Diese Form der TABLE-Anweisung ähnelt der der Replicat MAP-Anweisung. Der Unterschied besteht darin, dass die Quelltabelle im Datensatz nicht mit einer TARGET-Klausel einer Zieltabelle zugeordnet ist. TABLE für Replicat ist nur ein Mittel, um eine Nicht-Datenaktion auszulösen, die von Replicat ausgeführt wird, wenn ein Ereignisdatensatz auftritt. Wenn sich Replicat im koordinierten Modus befindet, werden alle Aktionen über den Thread mit dem niedrigsten Thread ID verarbeitet.
Da keine Zieltabelle angegeben wird, gilt Folgendes:
-
Es sind keine Optionen verfügbar, mit denen Replicat Tabellennamen oder Spalten einer Zieltabelle zuordnen kann, und es gibt auch keine Optionen, mit denen Replicat Daten bearbeiten kann.
-
Der Parameter
ASSUMETARGETDEFSkann nicht in derselben Parameterdatei wie eine ReplicatTABLE-Anweisung verwendet werden, daASSUMETARGETDEFSdie Namen von Zieltabellen erfordert, damit Replicat Tabellendefinitionen abfragen kann. Sie müssen eine Quelldefinitionsdatei erstellen, um die Definitionen der Quelltabellen für Replicat bereitzustellen. Übertragen Sie diese Datei in das Zielsystem, und geben Sie den Pfadnamen der Datei mit dem ParameterSOURCEDEFSin der Replicat-Parameterdatei an. -
Der Ereignisdatensatz selbst wird von Replicat nicht auf die Zieldatenbank angewendet. Sie müssen
IGNOREoderDISCARDals eine derEVENTACTIONS-Optionen angeben.
Syntax
Eine Beschreibung der folgenden Syntaxoptionen finden Sie unter "TABLE | MAP".
TABLE <table_spec>,
[, SQLEXEC (<SQL_specification>), BEFOREFILTER]
[, FILTER (<filter_clause>)]
[, WHERE (<where_clause>)]
{, EVENTACTIONS ({IGNORE | DISCARD} [<action>])}
;
Beispiel
Im folgenden Beispiel wird das Replicat-Tracing für eine Auftragstransaktion aktiviert, die einen Einfügevorgang für eine bestimmte Auftragsnummer (order_no = 1) enthält. Die Traceinformationen werden in die Tracedatei order_1.trc geschrieben. Der Parameter MAP gibt die Zuordnung der Quelltabelle zur Zieltabelle an.
MAP sales.order, TARGET rpt.order;
TABLE sales.order,
FILTER (@GETENV ('GGHEADER', 'OPTYPE') = 'INSERT' AND @STREQ (order_no, 1), &
EVENTACTIONS (TRACE order_1.trc TRANSACTION);