Mapped Scope
Objects that are specified in TABLE
and MAP
statements are of MAPPED
scope. Extraction and replication instructions in those statements apply to both data (DML) and DDL on the specified objects, unless override rules are applied.
For objects in TABLE
and MAP
statements, the DDL operations listed in the following table are supported.
Operations | On any of these Objects(1) |
---|---|
|
|
|
|
|
|
Footnote 1 TABLE and MAP do not support some special characters that could be used in an object name affected by these operations. Objects with non-supported special characters are supported by the scopes of UNMAPPED and OTHER.
Footnote 2
Applies to COMMENT ON TABLE
, COMMENT ON COLUMN
Footnote 3
Includes AS SELECT
Footnote 4
Table name must be qualified with schema name.
For Extract, MAPPED
scope marks an object for DDL capture according
to the instructions in the TABLE
statement. For Replicat,
MAPPED
scope marks DDL for replication and maps it to the object
specified by the schema and name in the TARGET
clause of the
MAP
statement. To perform this mapping, Replicat issues
ALTER SESSION
to set the schema of the Replicat session to the
schema that is specified in the TARGET
clause. If the DDL contains
unqualified objects, the schema that is assigned on the target depends on circumstances
described in Understanding DDL Scopes.
Assume the following TABLE
and MAP
statements:
Extract (source)
TABLE fin.expen; TABLE hr.tab*;
Replicat (target)
MAP fin.expen, TARGET fin2.expen2; MAP hr.tab*, TARGET hrBackup.bak_*;
Also assume a source DDL statement of:
ALTER TABLE fin.expen ADD notes varchar2(100);
In this example, because the source table fin.expen
is in a MAP
statement with a TARGET
clause that maps to a different schema and table name, the target DDL statement becomes:
ALTER TABLE fin2.expen2 ADD notes varchar2(100);
Likewise, the following source and target DDL statements are possible for the second set of TABLE
and MAP
statements in the example:
Source:
CREATE TABLE hr.tabPayables ... ;
Target:
CREATE TABLE hrBackup.bak_tabPayables ...;
When objects are of MAPPED
scope, you can omit their names from the DDL configuration parameters, unless you want to refine their DDL support further. If you ever need to change the object names in TABLE
and MAP
statements, the changes will apply automatically to the DDL on those objects.
If you include an object in a TABLE
statement, but not in a MAP
statement, the DDL for that object is MAPPED
in scope on the source but UNMAPPED
in scope on the target.