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.
-
Platzhalter sind in allen Namensbereichen zulässig.
-
Der Parameter
GLOBALSEXCLUDEWILDCARDOBJECTSONLYwird unterstützt. -
Der Containerteil ist nur in der CDB-Umgebung mit dem dreiteiligen Namen gültig.
-
Der Parameter
SOURCECATALOGwirkt sich aus, wenn kein Katalogteil angegeben ist. -
Containeranteil muss angegeben werden, wenn
SOURCECATALOGnicht angegeben ist. -
Wenn ein Containeranteil angegeben ist, hat er Vorrang vor
SOURCECATALOG.
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 der Partitionsname keinem
PARTITION-Parameter entspricht, wird er ausgeschlossen. -
Wenn er vom Parameter
PARTITIONenthalten ist, werden Ausschlussregeln ausgewertet, es sei denn, sie wurden von einer Einschlussregel ohne Platzhalter eingeschlossen, undEXCLUDEWILDCARDOBJECTSONLYwurde angegeben.
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;