PARTITION | PARTITIONEXCLUDE

Gültig für

Extract, Distribution Service und Replicat. Nur Oracle.

Beschreibung

Diese Parameter werden in Verbindung mit den Parametern TABLE und TABLEEXCLUDE verwendet. Nur wenn eine Tabelle enthalten ist, werden die Partitionsregeln ausgewertet.

Aus Gründen der Konsistenz verhalten sich diese Parameter ähnlich wie ihre TABLE- und TABLEEXCLUDE-Pendants.

Wenn der [container.]schema.table-Teil einer PARTITION- oder PARTITIONEXCLUDE-Regel mit der Tabelle übereinstimmt, wird nur eine zusätzliche Partitionsfilterung ausgeführt.

Partitionsfilterregeln werden in der folgenden Reihenfolge ausgewertet:

Wenn Sie PARTITION oder EXCLUDEPARTITION in Replicat verwenden, muss der Parameter PARTITION für den Extract-Parameter TABLE verwendet werden, um die Partitionsmetadaten in die Traildatei zu schreiben, damit Replicat sie verarbeiten kann.

Hinweis: Ein Fehler tritt auf, wenn ein Parameter PARTITION oder PARTITIONEXCLUDE eine ungültige Anzahl an Teilen aufweist.

Syntax

PARTITION [<container>.]<schema.table.partition>;
PARTITIONEXCLUDE [<container>.]<schema.table.partition>;

Bei Nicht-CDB müssen 3 Teile angegeben werden (schema.table.partition).

Bei der CDB müssen entweder 4 Teile angegeben werden (pdb.schema.table.partition) oder 3 Teile mit einem vorhergehenden SOURCECATALOG-Parameter.

Beispiele

Im folgenden Beispiel mit DML-Vorgängen für Partition P_Q4 der Tabelle SH.SALES ist die Partition enthalten, da sie sowohl in Tabellen- als auch in Partitionsregeln enthalten ist.

TABLE
  sh.sales;
  PARTITION sh.sales*.p_q4;

Im folgenden Beispiel mit DML-Vorgängen in Partition P_Q4 von Tabelle SH.SALES werden alle Partitionen mit den Parametern TABLE/PARTITION auf der Extract-Seite enthalten. Die Partition P_Q4 ist auf der Replicat-Seite mit den Parametern MAP/PARTITIONEXCLUDE ausgeschlossen. Alle anderen Partitionsänderungen werden von Replicat übernommen.

TABLE sh.sales;
  PARTITION sh.sales.p_q*;
MAP sh.sales, TARGET sh.sales;
  PARTITION sh.sales.p_q4;

Im folgenden Beispiel mit DML-Vorgängen für Partition P_Q4 von Tabelle SH.SALES wird die Partition P_Q4 ausgeschlossen, da sie nur für die Partition P_Q3 von SH.SALES gültig ist:

TABLE
   sh.sales;PARTITION
   sh.sales*.p_q3;

Das folgende Beispiel mit DML-Vorgängen in Partition P_Q3 von SH.SALES zeigt, wie mehrere Partitionsregeln angegeben werden können. Partition wird eingeschlossen, da sie mit einer der Partitionsinklusionsregeln abgeglichen wird.

TABLE
          sh.sales;PARTITION
          sh.sales.p_q3;PARTITION
          sh.sales.p_q4;

Im folgenden Beispiel mit DML-Vorgängen für Partition P_Q4 der Tabelle SH.SALES_HISTORY wird die Partition P_Q4 aufgrund einer expliziten Partitionsausschlussregel ausgeschlossen.

TABLE
  sh.sales_history
  PARTITION sh.sales*.p_q4;
  PARTITIONEXCLUDE sh.sales_history.p_q*;

Im folgenden Beispiel mit DML-Vorgängen für Partition P_S1 der Tabelle SH.PRODUCTS wird weder die Partition PART_S1 noch die vollständige Tabelle SH.PRODUCTS erfasst, da die Tabelle SH.PRODUCTS nicht referenziert wird.

TABLE
  sh.sales;PARTITION
  sh.products.p_s1;

Im folgenden Beispiel mit DML-Vorgängen für Partition P_Q4 der Tabelle SH.SALES wird die Partition PART_S1 eingeschlossen, weil keine Partitionsregel einen Tabellenteil aufweist, der SH.SALES entspricht. Daher wird keine Partitionsregel ausgewertet.

TABLE
  sh.sales;
  PARTITION sh.products.p_s1;