# compitableVersions - 配置数据库其他版本兼容性
当数据库不同版本有一些配置不一致时,可以把默认配置以外的其他版本新增或修改的内容和选项配置在此属性中。
示例:
"compitableVersions": {
">=8.0.0": {
"forbiddenSQLs": [...],
"compatibilityLevel": "...",
"errorIdentifyConfs": {...},
"sqlKeyWords": {...},
"dataTypes": {...},
"identifierTypes": {...},
"operatorTemplates": {...},
"sqlTemplates": [...],
"displayFormats": {},
"functionTemplates": {...},
"supports": {...}
}
}
提示
compitableVersions
中配置的顺序要保证高版本在前、低版本在后,系统会从上至下优先选用匹配的高版本的配置。- 版本号遵循semver规范 (opens new window),且必须为3位数字,示例可参考
capabilities.json
的matchDbVersion属性。
# 兼容性选项
兼容性选项的配置与capabilities.json中的配置基本一致,下面列出一些不同的配置选项。
# compatibilityLevel
配置其他版本数据库的兼容级别,默认为ALL
,详细配置可参考pacakge.json
中的数据库兼容级别
# sqlKeyWords
关键字列表,如果某个字段或表名是关键字,那么会需要转义。
- 系统默认会读取JDBC驱动API提供的关键字列表,在这里的列表中加上
DONT_AUTO_INCLUDE_DRIVER_KEYWORDS
可禁用此功能。 - 系统也会自动加上SQL 2003标准中的相关关键字,在这里的列表中加上
DONT_AUTO_INCLUDE_SQL2003_KEYWORDS
可禁用此功能。 - 基于JDBC驱动API以及SQL 2003标准中的关键字,可以在这里补上自定义的关键字,形成一个完整的关键字列表。
# identifierTypes
描述数据库一个对象,如表、视图、存储过程等的类型信息。
示例:
"identifierTypes"{
"type": "...",
"ignore": true|false
}
# type
数据库对象在SuccBI内对应的对象类型,详细类型如下所示:
TABLE
:物理表,可以select和update数据LOCAL_TEMPTABLE
:本地临时表,只在当前连接可见,当前连接物理关闭时删除GLOBAL_TEMPTABLE
:全局临时表,所有连接可见,通常是引用过它的连接关闭时自动删除CUBE
:多维数据集的查询对象类型ESINDEX
:ES索引VIEW
:视图MATERIALIZED_VIEW
:物化视图SYNONYM
:同义词TRIGGER
:触发器INDEX
:索引CONSTRAINT
:约束SEQUENCE
:序列PROCEDURE
:存储过程FUNCTION
:函数UNKNOWN
:其他未知对象
# ignore
每个数据库的对象类型可能有所区别,若数据库中没有指定的对象类型,可以配置ignore
为true忽略这个类型,默认为false。
是否有帮助?
0条评论
评论