If column name in the target is different than the source, You can configure this with Although it's a bad practice, Oracle allows the columns to be named arbitrarily using the double-quote syntax. With this, the names can include keywords, lowercase or unicode characters.
However, as Replicate does not double-quote the names in the SQL applied to the target, such columns are not supported in replicated tables.
A similar problem occurs when replicating to non-Oracle targets - some of the valid names in Oracle are keywords in other database systems and thus can fail apply of changes, too.
- For lowercase names: as the SQL is case insensitive and apply does not use double quotes, just create the column name in uppercase on the target
- For unicode: not supported
- For spaces in names: not supported (although spaces at the beginning or end of column names are ignored)
- For keywords: a global rename function is implemented. This APPLY_COLUMN_NAMES_MAP
...
- variable specifies a global rule renaming all columns in all replicated tables with a specified name to a different name.
Syntax:
Section | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Example:
Section | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Note |
---|
APPLY process requires a restart to implement this mapping. |
...
013/05/03 05:34:37 INFO> Column translate: [empnoCOMMENT]=>[employeeCOMMENT_noCOLUMN]