在调用ConfigureSubscriptionInstance接口时,您需要传入订阅对象参数。本文为您介绍订阅对象的定义和配置案例。

相关接口

配置订阅通道

订阅对象定义说明

订阅对象(SubscriptionObjects)的取值类型为Object,支持一定的正则表达式,详细定义如下。

[{
    "SchemaName": "待订阅的库名",
    "TableIncludes": [{
        "TableName": "待订阅的表名"
    }],
    "TableExluces": [{
        "TableName": "待订阅的库中不需要订阅的表名"
    }]
}]

订阅对象配置示例

示例一:订阅dtstestdata库中所有的表。

[{
    "DBName": "dtstestdata"
}]

示例二:订阅dtstestdata和mysqltest库中所有的表。

[{
    "DBName": "dtstestdata"
},{
    "DBName": "mysqltest"
}]

示例三:订阅dtstestdata库中的customer和order表。

[{
    "DBName": "dtstestdata",
    "TableIncludes": [{
        "TableName": "customer"
    }, {
        "TableName": "order"
    }]
}]

示例四:订阅dtstestdata库中除表名前缀为order以外的所有表。

[{
    "DBName": "dtstestdata",
    "TableExcludes": [{
        "TableName": "order.*"
    }]
}]

支持的正则表达式

符号 规则描述
英文句号(.) 表示匹配除‘\r\n’之外的任何单个字符。
星号(*) 表示匹配前面子表达式任意次,例如:h.*llo将匹配 hllo或heeeello等字符串。
英文问号(?) 表示匹配前面子表达式零次或1次,例如:h.?llo将匹配hllo或hello,但不能匹配haello。
[characters] 字符集合 表示匹配方括号内任意一个字符,例如:h[ae]llo将匹配hallo或hello。
[^characters] 负值字符集合 表示不匹配方括号内任意一个字符,例如:h[^ae]llo将匹配hcllo或hdllo,但不能匹配hallo或hello。
[character1-character2] 字符范围 表示匹配character1-character2范围内的字符,例如: [0-9]、[a-z]。