How Oracle GoldenGate Handles Derived Object Names
DDL operations can contain a base object name and also a derived object name.
A base object is an object that contains data. A derived object is an object that inherits some attributes of the base object to perform a function related to that object. DDL statements that have both base and derived objects are:
-
RENAME
andALTER RENAME
-
CREATE
andDROP
on an index, synonym, or trigger
Consider the following DDL statement:
CREATE INDEX hr.indexPayrollDate ON TABLE hr.tabPayroll (payDate);
In this case, the table is the base object. Its name (hr.tabPayroll
) is the base name and is subject to mapping with TABLE
or MAP
under the MAPPED
scope. The derived object is the index, and its name (hr.indexPayrollDate
) is the derived name.
You can map a derived name in its own TABLE
or MAP
statement, separately from that of the base object. Or, you can use one MAP
statement to handle both. In the case of MAP
, the conversion of derived object names on the target works as follows.