国产数据库之神通数据库如何设置数据库大小写敏感以及列名按照指定方式返回

本文详细介绍了神通数据库对大小写敏感性的处理选项,包括数据存储、查询结果、投影列样式以及使用特定参数来调整大小写规则,如设置lower_column、COLUMN_CASE_SENSITIVE和setlower_star_column等。
摘要由CSDN通过智能技术生成

神通数据库支持数据库大小写敏感与非敏感设置,具体包括以下几种:

1.数据大小写不敏感,默认敏感

2.查询投影列名称返回小写.,默认返回大写(双引号强制小写的除外)

3.投影列按实际样式返回,默认返回大写(双引号强制小写的除外)

4.select * 方式返回投影列名称小写,默认返回大写(双引号强制小写的除外)

5.表名和列名加""匹配大写

敏感与非敏感是通过参数控制的,下面进行说明:

1.数据大小写不敏感设置
数据库存储数据默认是大小写敏感的,有些项目特殊,想要数据大小写不敏感,即通过AB去匹配ab、AB、Ab、aB都能匹配上,针对数据库数据大小写不敏感设置需要在创建数据库时指定,并且是全不对象生效。默认不指定是大小写敏感
CASESENSITIVE    ##(敏感)
CASEINSENSITIVE  ##(不敏感)
--创建一个数据大小写不敏感的数据库实例
CREATE DATABASE OSRDB CASEINSENSITIVE ENCODING 'UTF8';

2.查询投影列名称返回小写
 神通数据库默认投影列返回全大写(双引号强制小写的除外),有的业务场景,查询投影列有大写、小写、驼峰等情况,想在查询时返回投影列名称为小写。即select A,b,Cc from tab;返回投影列的原信息是a|b|cc,此操作与返回的数据无关,仅针对投影列名称,设置参数即可实现:
 set lower_column=true; 
3. 投影列按实际样式返回
  神通数据库默认投影列返回全大写(双引号强制小写的除外),有业务场景想要投影列能够按照实际输入的情况返回,即select A,b,Cc from tab;返回投影列名称A|b|Cc
 set COLUMN_CASE_SENSITIVE=true; 
4.select * 方式返回投影列名称小写
  select * 方式比较特殊,没有指定具体投影列,返回表内全部字段名称作为投影列,默认以数据库内存储的表的元定义为准返回,神通数据库默认是不区分大小写的,表元定义存储为大写(双引号强制小写除外),所以默认select * 返回的投影列为大写情况,可通过设置参数,设置其返回投影列名称转为小写
##两个参数需要同时设置
set COLUMN_CASE_SENSITIVE=true;  #列名按实际输入返回
set lower_star_column=TRUE;  #select * 返回小写字段
5.表明和列名加双引号强制大小写后也可匹配大写
   数据库默认是不区分大小写的,表和字段名称在元信息中存储默认都是大写,有时业务查询语句中查询字段和表明加双音号强转,想要强转后也可查询相应字段,如select "A","a" from tab,"A"和"a"都可以查询tab表的A字段。如果建表时指定"a"强制小写,"A"是怎么也无法匹配的
 set NAME_CASE_SENSITIVE=FALSE;
 此参数默认为true,即表明和列名加双引号强制小写是不能匹配大写的,保留数据库原有逻辑,默认不区分大小写,使用双引号强制区分大小写。
  

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值