平台和客户端兼容性

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

transform_null_equals

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

  • 正确的SQL标准兼容的expr = NULL总是返回NULL(未知)。
  • Microsoft Access里的过滤表单生成的查询使用expr = NULL来测试空值。打开这个选项,可以使用该接口来访问数据库。

该参数属于USERSET类型参数,请参考表2中对应设置方法进行设置。

取值范围:布尔型

  • on表示控制表达式expr = NULL(或NULL = expr)当做expr IS NULL处理。
  • off表示不控制,即expr = NULL总是返回NULL(未知)。

默认值:off

平台和客户端兼容性 - 图1 说明:
新用户经常在涉及NULL的表达式上语义混淆,故默认值设为off。

support_extended_features

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

该参数属于POSTMASTER类型参数,请参考表2中对应设置方法进行设置。

取值范围:布尔型

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

默认值:off

td_compatible_truncation

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

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

该参数属于USERSET类型参数,请参考表2中对应设置方法进行设置。

取值范围:布尔型

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

默认值:off