-
plsql_block_concat_typename 参数说明:控制PL/SQL的子块中自定义类型名字的拼接方式。该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示PL/SQL子块中的自定义类型,其在SQL中实际创建的名字拼接格式为OID.[m.n···].typename,其中OID为存储过程的OID,typename为自定义类型的名称,m、n则为子块的序号,多层子块嵌套时,则需要多层序号,如果仅有单层子块,则仅需m一个数字拼接即可。 off:表示向下兼容旧模式,名字拼接方式为OID.typename。 默认值:on。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:设置为off时,当子块内的自定义类型重名时,SQL中无法区分不同子块的自定义类型。 若从老版本升级,该参数会默认设置为off。
-
default_with_oids 参数说明:在没有声明WITH OIDS和WITHOUT OIDS的情况下,这个选项控制在新创建的表中CREATE TABLE和CREATE TABLE AS是否包含一个OID字段。它还决定SELECT INTO创建的表里面是否包含OID 。该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示在新创建的表中,CREATE TABLE和CREATE TABLE AS包含一个OID字段。 off:表示在新创建的表中,CREATE TABLE和CREATE TABLE AS不包含一个OID字段。 默认值:off。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:不推荐在用户表中使用OID,故默认设置为off。需要带有OID字段的表应该在创建时声明WITH OIDS 。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
-
system_view_version 参数说明:控制系统视图的版本。具体详见表1 系统视图版本参数说明。所有版本向下兼容,例如system_view_version=3时同时满足版本2与版本1的所有特性。该参数可在PDB级别设置。 参数类型:整型 参数单位:无 取值范围:0 ~ 9999 默认值:0。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:升级场景不做修改,安装场景配置为表1 系统视图版本参数说明中的最大版本。 设置不当的风险与影响:系统视图部分字段行为存在变更,参考表1 系统视图版本参数说明。 表1 系统视图版本参数说明 取值 说明 0 默认行为。 1 当
GaussDB 中不存在已准备好的事务时,V$GLOBAL_TRANSACTION视图的PREPARECOUNT字段由NULL变为0。
-
standard_conforming_strings 参数说明:控制普通字符串文本('...')中是否按照SQL标准把反斜杠当作普通文本。应用程序通过检查这个参数可以判断字符串文本的处理方式。建议明确使用转义字符串语法(E'...')来转义字符。该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示按照SQL标准把反斜杠当作普通文本。 off:表示反斜杠在字符串字面值中被解释为转义字符。 默认值:on。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
-
enable_recordtype_check_strict 参数说明:控制是否要对PL/SQL中的record类型进行严格性校验,详见说明部分。该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示会在编译procedure、function、package时,校验创建的record类型中不支持的功能,以及提供procedure、function里创建的record类型not null功能。 off:表示向下兼容旧式模式,不会对record类型进行校验。 默认值:on。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:设置为off时,部分指定了not null约束和定义了列默认值的record变量在赋值时功能不生效。 若从老版本升级,该参数会默认设置为off。 打开该参数后有以下三点行为变更: 存储过程、函数内部创建的record类型,列约束not null功能生效。 package里创建的record类型,如果有一列指定了not null或default,则会编译报错。通过访问package.rec类型来创建的变量不支持not null和default功能。 其他类型嵌套一个record类型,如果有一列指定了not null或default,则会编译报错。创建嵌套record类型的变量,该变量的record元素不支持not null和default功能。
-
synchronize_seqscans 参数说明:控制并行执行的序列扫描是否相互同步。该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示扫描可能从表的中间开始,然后选择“环绕”方式来覆盖所有的行,目的是与已在执行的扫描保持同步。这种同步机制可以提高并行序列扫描的性能,但可能导致没有ORDER BY的查询返回乱序结果 off:禁用序列扫描的同步行为,每个扫描都从表的起始位置开始。可以确保没有ORDER BY的查询返回与物理存储顺序一致的结果,但并行扫描效率可能会降低。 默认值:on。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
-
enable_beta_features 参数说明:控制是否开启某些非正式发布的特性,仅用于POC验证。该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示开启这些功能受限的特性,保持前向兼容。 off:表示禁止使用这些特性。 默认值:off。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:这些特性属于延伸特性,建议用户谨慎开启,在某些功能场景下可能存在问题。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
-
array_nulls 参数说明:控制数组输入解析器是否将没有用引用的NULL识别为数组的一个NULL元素。该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示允许向数组中输入空元素。 off:表示向下兼容旧模式。仍然能够创建包含NULL值的数组。 默认值:on。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
-
escape_string_warning 参数说明:控制是否对普通字符串中使用的反斜杠转义发出警告。该参数可在PDB级别设置。 如果需要使用反斜杠作为转义,可以调整为使用转义字符串语法(E'...')来做转义,因为在SQL标准中,普通字符串的默认行为将反斜杠作为一个普通字符。 这个变量可以帮助定位需要改变的代码。 使用E转义会导致部分场景下日志记录不全。 参数类型:布尔型 参数单位:无 取值范围: on:对普通字符串中使用的反斜杠转义发出警告。 off:不对普通字符串中使用的反斜杠转义发出警告。 默认值:on。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
-
backslash_quote 参数说明:控制字符串文本中的单引号是否能够用\'表示。该参数可在PDB级别设置。 在字符串文本符合SQL标准的情况下,\没有任何其他含义。这个参数影响的是如何处理不符合标准的字符串文本,包括明确的字符串转义语法是(E'...')。 参数类型:枚举类型 参数单位:无 取值范围: on:表示一直允许用\'表示。 off:表示不能用\'表示。 safe_encoding:表示当客户端字符集编码在多字节字符末尾不包含\的ASCII值时,允许使用。 默认值:safe_encoding。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
-
lo_compat_privileges 参数说明:控制是否启动对大对象权限检查的向后兼容模式。该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示当读取或修改大对象时,禁用权限检查。 off:表示启用大对象的权限检查。 默认值:off。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
-
sql_inheritance 参数说明:用来控制继承表的访问策略,该参数是为了兼容旧版本而设置的。该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示可以访问子表。 off:表示不可以访问子表,即默认使用ONLY关键字。 默认值:on。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
-
modify_function_property 参数说明:在非M兼容模式下,该参数用于控制相关系统函数的属性。在PDB场景内,若未设置该参数,则承接来自全局的设置。 参数类型:字符型 参数单位:无 取值范围:当前只支持表20中的配置项,当设置多个兼容性配置项时,相邻配置项之间用逗号隔开。 默认值:新安装数据库为"3257,5562,4164,4073";若升级的基础版本不存在该GUC参数,默认为"";若升级的基础版本存在该GUC参数,保留原设置。 设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。 设置建议:推荐使用默认值,不建议客户修改。 设置不当的风险与影响:影响系统函数的属性。 表20 系统函数配置项 系统函数对应的oid 描述 3257 修改函数pg_catalog.current_timestamp(numeric)的易变性,当该配置项存在于GUC参数中时,函数易变性为 'stable',不存在时为 'immutable'。 4073 修改函数pg_catalog.text_timestamp(text)的易变性,当该配置项存在于GUC参数中时,函数易变性为 'stable',不存在时为 'immutable'。 4164 修改函数pg_catalog.text_date(text)的易变性,当该配置项存在于GUC参数中时,函数易变性为 'stable',不存在时为 'immutable'。 5562 修改函数pg_catalog.DBTimezone()的易变性,当该配置项存在于GUC参数中时,函数易变性为 'stable',不存在时为 'immutable'。
-
enable_cursor_with_hold 参数说明:在A兼容模式下,控制游标是否具有WITH HOLD功能。开启后,游标创建不带HOLD关键字,并且SELECT子句不包含FOR UPDATE/SHARE子句,默认值为WITH HOLD。 参数类型:布尔型 参数单位:无 取值范围: on:游标创建不带HOLD关键字时默认值为WITH HOLD。参数开启后,CURSOR cursor_name FOR query等同于CURSOR cursor_name WITH HOLD FOR query。 off:游标创建不带HOLD关键字时默认值为WITHOUT HOLD。 默认值:off。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。仅支持在session中设置该参数。 设置建议:推荐使用默认值。 设置不当的风险与影响:若设置为on,所有游标不会被释放,在session中会有内存膨胀的风险。
-
forbid_package_spec_circular_dependency 参数说明:控制PACKAGE包头依赖成环时对象的状态,使用时需要打开enable_force_create_obj参数。 参数类型:布尔型 参数单位:无 取值范围: on:PACKAGE包头依赖成环时对象状态为失效。 off:PACKAGE包头依赖成环时对象状态为有效。 默认值:on。 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:若设置为off,PACKAGE包头依赖成环时对象状态可以变为有效。 直接安装当前版本数据库时,该参数值为on。从之前版本升级到当前版本时,该参数值为off。