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)