VastbaseG100

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

Menu

result_case_mode

功能描述

Vastbase支持通过result_case_mode参数控制返回字段名的大小写。从Build 14版本及以后开始,在Oracle兼容模式下,当用户在CREATE TABLE、ALTER TABLE、SELECT INTO等语句中,指定的列字段名称显式的被双引号包含,则在SELECT语句的输出结果中,列字段名称的大小写与引号内的内容保持一致。

参数说明:该参数用于控制返回字段名的大小写。

取值范围:lower、upper

  • lower:参数初始化取值,未使用引号指定的字段名及别名返回纯小写形式,否则返回引号指定形式。

  • upper:未使用引号指定的字段名及别名返回纯大写形式,否则返回引号指定形式。

注意事项

  • 指定的列字段名称显式的被双引号包含则保持原有大小写形式,否则字段大小写受result_case_mode参数控制。

  • 该特性仅在数据库兼容模式为Oracle时支持(即数据库初始化时指定DBCOMPATIBILITY='A')

  • 该参数只影响查询返回字段名的大小写形式,不影响Vastbase原有的大小写匹配逻辑。

  • 不支持在postgresql.conf文件中配置该参数,可能导致严重问题,仅支持在会话中配置。

示例

1、数据库初始化和用户与数据库建立连接后配置result_case_mode的值为upper。

set result_case_mode="upper";

2、查看参数值。

show result_case_mode;

返回结果为:

 result_case_mode
---------------------------
 upper
(1 row)

3、创建测试表。

create table test(aa int,"bb" int,Dd int,"Ee" int);

4、查询字段名带引号的结果。

select * from test;

返回结果为如下,其中被双引号包含的字段保持其大小写格式,未被包含的字段均变为大写:

 AA | bb | DD | Ee
----+----+----+----
(0 rows)