DDLSUBST

有效对象

提取和复制

说明

使用 DDLSUBST 参数替换 DDL 操作中的字符串。例如,可以用一个表名替代另一个表名,也可以用注释中的字符串替代。此搜索不区分大小写。要在字符串中表示引号,请使用双引号。

使用 DDLSUBST 的准则

DDL INCLUDE OBJNAME fin.*
DDLSUBST 'cust' WITH 'customers' INCLUDE OBJNAME sales.*

在本示例中,不会进行任何替换,因为 INCLUDE 和 DDLSUBST 语句中的对象不同。fin 拥有的对象包含在 Oracle GoldenGate DDL 配置中,但 sales 拥有的对象不包括在配置中。

默认值

无替代

语法

DDLSUBST '<search_string>' WITH '<replace_string>'
[INCLUDE <inclusion_clause> | EXCLUDE <exclusion_clause>]

<'search_string'>

要替换的源 DDL 语句中的字符串。将字符串括在单引号内。要在字符串中表示引号,请使用双引号。

WITH

必需的关键字。

<'replace_string'>

您要在目标 DDL 中用作替换项的字符串。将字符串括在单引号内。要在字符串中表示引号,请使用双引号。

INCLUDE <inclusion_clause> | EXCLUDE <exclusion_clause>

指定一个或多个 INCLUDE 和 EXCLUDE 语句,以过滤对其应用字符串替换规则的 DDL 操作。有关语法和用法,请参见 DDL Filtering Options 。

示例

示例 1

以下语句将字符串 cust 替换为 fin 方案中表的字符串 customers。

DDLSUBST 'cust' WITH 'customers'
INCLUDE ALL OBJTYPE 'table' OBJNAME fin.*

示例 2

仅当 DDL 命令包含单词 logfile 时,以下命令才会替换新目录。如果多次找到搜索字符串,则多次插入替换字符串。

DDLSUBST '/file1/location1' WITH '/file2/location2' INCLUDE INSTR 'logfile'

示例 3

以下语句使用多个 DDLSUBST 语句,这些语句按所示的顺序执行。

DDLSUBST 'a' WITH 'b' INCLUDE ALL
DDLSUBST 'b' WITH 'c' INCLUDE ALL

上述函数的净效果将所有 a 和 b 字符串替换为 c。