VastbaseG100

基于openGauss内核开发的企业级关系型数据库。

Menu

版本和平台兼容性

历史版本兼容性

Vastbase介绍数据库的向下兼容性和对外兼容性特性的参数控制。数据库系统的向后兼容性能够为对旧版本的数据库应用提供支持。本节介绍的参数主要控制数据库的向后兼容性。

array_nulls

参数说明: 控制数组输入解析器是否将未用引用的NULL识别为数组的一个NULL元素。

该参数属于USERSET类型参数,请参考配置运行参数/重设参数章节中对应设置方法进行设置。

取值范围: 布尔型

  • on表示允许向数组中输入空元素。

  • off表示向下兼容旧式模式。仍然能够创建包含NULL值的数组。

默认值: on

backslash_quote

参数说明: 控制字符串文本中的单引号是否能够用\'表示。

该参数属于USERSET类型参数,请参考配置运行参数/重设参数章节中对应设置方法进行设置。

在字符串文本符合SQL标准的情况下,\没有任何其他含义。这个参数影响的是如何处理不符合标准的字符串文本,包括明确的字符串转义语法是(E'…')。

取值范围: 枚举类型

  • on表示一直允许使用\'表示。

  • off表示拒绝使用\'表示。

  • safe_encoding表示仅在客户端字符集编码不会在多字节字符末尾包含\的ASCII值时允许。

默认值: safe_encoding

escape_string_warning

参数说明: 警告在普通字符串中直接使用反斜杠转义。

  • 如果需要使用反斜杠作为转义,可以调整为使用转义字符串语法(E'…')来做转义,因为在每个SQL标准中,普通字符串的默认行为现在将反斜杠作为一个普通字符。

  • 这个变量可以帮助定位需要改变的代码。

该参数属于USERSET类型参数,请参考配置运行参数/重设参数章节中对应设置方法进行设置。

取值范围: 布尔型

默认值: on

lo_compat_privileges

参数说明: 控制是否启动对大对象权限检查的向后兼容模式。

该参数属于SUSET类型参数,请参考配置运行参数/重设参数章节中对应设置方法进行设置。

取值范围: 布尔型

on表示当读取或修改大对象时禁用权限检查,与PostgreSQL 9.0以前的版本兼容。

默认值: off

quote_all_identifiers

参数说明: 当数据库生成SQL时,此选项强制引用所有的标识符(包括非关键字)。这将影响到EXPLAIN的输出及函数的结果,例如pg_get_viewdef。详细说明请参见vb_dump的–quote-all-identifiers选项。

该参数属于USERSET类型参数,请参考配置运行参数/重设参数章节中对应设置方法进行设置。

取值范围: 布尔型

  • on表示打开强制引用。

  • off表示关闭强制引用。

默认值: off

ql_inheritance

参数说明: 控制继承语义。用来控制继承表的访问策略,off表示各种命令不能访问子表,即默认使用ONLY关键字。这是为了兼容7.1之前版本而设置的。

该参数属于USERSET类型参数,请参考配置运行参数/重设参数章节中对应设置方法进行设置。

取值范围: 布尔型

  • on表示可以访问子表。

  • off表示不访问子表。

默认值: on

standard_conforming_strings

参数说明: 控制普通字符串文本('…')中是否按照SQL标准把反斜扛当普通文本。

  • 应用程序通过检查这个参数可以判断字符串文本的处理方式。

  • 建议明确使用转义字符串语法(E'…')来转义字符。

该参数属于USERSET类型参数,请参考配置运行参数/重设参数章节中对应设置方法进行设置。

取值范围: 布尔型

  • on表示打开控制功能。

  • off表示关闭控制功能。

默认值: on

synchronize_seqscans

参数说明: 控制启动同步的顺序扫描。在大约相同的时间内并行扫描读取相同的数据块,共享I/O负载。

该参数属于USERSET类型参数,请参考配置运行参数/重设参数章节中对应设置方法进行设置。

取值范围: 布尔型

  • on表示扫描可能从表的中间开始,然后选择”环绕”方式来覆盖所有的行,为了与已经在进行中的扫描活动同步。这可能会造成没有用ORDER BY子句的查询得到行排序造成不可预测的后果。

  • off表示确保顺序扫描是从表头开始的。

默认值: on

enable_beta_features

参数说明: 控制开启某些非正式发布的特性,仅用于POC验证。这些特性属于延伸特性,建议客户谨慎开启,在某些功能场景下可能存在问题。

该参数属于USERSET类型参数,请参考配置运行参数/重设参数章节中对应设置方法进行设置。

取值范围: 布尔型

  • on表示开启这些功能受限的特性,保持前向兼容。但某些场景可能存在功能上的问题。

  • off表示禁止使用这些特性。

默认值: off

平台和客户端兼容性

很多平台都使用数据库系统,数据库系统的对外兼容性给平台提供了很大的方便。

transform_null_equals

参数说明: 控制表达式expr = NULL(或NULL = expr)当做expr IS NULL处理。如果expr得出NULL值则返回真,否则返回假。

  • 正确的SQL标准兼容的expr = NULL总是返回NULL(未知)。

  • Microsoft Access里的过滤表单生成的查询使用expr = NULL来测试空值。打开这个选项,可以使用该接口来访问数据库。

该参数属于USERSET类型参数,请参考配置运行参数/重设参数章节中对应设置方法进行设置。

取值范围: 布尔型

  • on表示控制表达式expr = NULL(或NULL = expr)当做expr IS NULL处理。

  • off表示不控制,即expr = NULL总是返回NULL(未知)。

默认值: off

说明

新用户经常在涉及NULL的表达式上语义混淆,故默认值设为off。

support_extended_features

参数说明: 控制是否支持数据库的扩展特性。

该参数属于POSTMASTER类型参数,请参考配置运行参数/重设参数章节中对应设置方法进行设置。

取值范围: 布尔型

  • on表示支持数据库的扩展特性。

  • off表示不支持数据库的扩展特性。

默认值: off

td_compatible_truncation

参数说明: 控制是否开启与Teradata数据库相应兼容的特征。该参数在用户连接上与TD兼容的数据库时,可以将参数设置成为on(即超长字符串自动截断功能启用),该功能启用后,在后续的insert语句中,对目标表中char和varchar类型的列插入超长字符串时,会按照目标表中相应列定义的最大长度对超长字符串进行自动截断。保证数据都能插入目标表中,而不是报错。

说明
  • 超长字符串自动截断功能不适用于insert语句包含外表的场景。
  • 如果向字符集为字节类型编码(SQL_ASCII,LATIN1等)的数据库中插入多字节字符数据(如汉字等),且字符数据跨越截断位置,这种情况下,按照字节长度自动截断,自动截断后会在尾部产生非预期结果。如果用户有对于截断结果正确性的要求,建议用户采用UTF8等能够按照字符截断的输入字符集作为数据库的编码集。

该参数属于USERSET类型参数,请参考配置运行参数/重设参数章节中对应设置方法进行设置。 取值范围: 布尔型

  • on表示启动超长字符串自动截断功能。

  • off表示停止超长字符串自动截断功能。

默认值: off

oracle_vpd_enabled

参数说明: 该参数用于控制oracle_vpd功能。

  • 该参数仅在数据库兼容模式为Oracle时能够使用(即创建DB时DBCOMPATIBILITY='A'),在其他数据库兼容模式下不能使用该参数。

  • 该参数支持的版本情况如下:

    • Vastbase V2.2 Build 5(Patch No.174)及后续补丁版本
    • Vastbase V2.2 Build 10
    • Vastbase V2.2 Build 13

该参数属于POSTMASTER类型参数,请参考[重设参数表1]()中对应设置方法进行设置。

取值范围: 布尔型

  • on:表示打开oracle_vpd功能。

  • off:表示关闭oracle_vpd功能。

默认值: off