达梦数据库初始化“大小写敏感”参数解析

大家在使用达梦数据库的时候经常对大小写敏感这个产生困惑,下面给大家详细解读一下

1.大小写敏感参数是什么?

大小写敏感参数是达梦初始化数据库的时候的一个全局参数,默认是敏感的,并且设定后不可更改

--dbca 配置助手界面如下:

--dminit命令行工具配置如下:

dminit path=d:\dmdbms\data CASE_SENSITIVE=1 

--查询大小写敏感设置的值

SELECT CASE_SENSITIVE(); --结果为1是大小写敏感,结果为0是不敏感

2.大小写是针对对象名的还是针对表里面的数据的?

这个地方其实很多朋友都搞错了,以为是针对对象名的,其实主要是针对表里面的数据比较的时候大小写是否敏感

--首先看看对表里面内容做比较的时候的影响

CREATE TABLE  TEST_CASE_SENSITIVE(C1 VARCHAR(100));

INSERT INTO TEST_CASE_SENSITIVE VALUES('a');

INSERT INTO TEST_CASE_SENSITIVE VALUES('A');

COMMIT;

--大小写敏感的情况

select count(*) from TEST_CASE_SENSITIVE where c1='a'; --结果为1
select count(*) from TEST_CASE_SENSITIVE where c1='A'; --结果为1


--大小写不敏感的情况

select count(*) from TEST_CASE_SENSITIVE where c1='a'; --结果为2
select count(*) from TEST_CASE_SENSITIVE where c1='A'; --结果为2

--再来看看大小写敏感参数对对象名的影响

--在大小写敏感的情况下,创建对象时不要对对象名加双引号,大小写对对象名没有影响

create table a(c1 int);

select * from a;    --执行成功

select * from A;    --执行成功

select * from "A";  --执行成功

select * from "a";  --执行失败:无效的表或视图名[a]

create table "b"(c1 int);

select * from b;    --执行失败:无效的表或视图名[B]

select * from B;    --执行失败:无效的表或视图名[B]

select * from "b";  --执行成功

select * from "B";  --执行失败:无效的表或视图名[B]

--注意:在达梦管理工具中使用图形界面创建对象时如果用小写就会自动加上双引号
--查询的时候必须使用双引号来访问,很多朋友问题注意出在这里,如果在大小写敏
--感的库里面使用图形界面而不是SQL语句来创建对象,一定注意要用大写,用小写
--就会自动加双引号,强制保持大小写了

--------------------------------------------------------------------------------------
--在大小写不敏感的情况下,加不加双引号都无所谓,对查询没有影响

create table a(c1 int);

select * from a;    --执行成功

select * from A;    --执行成功

select * from "A";  --执行成功

select * from "a";  --执行成功

create table "b"(c1 int);

select * from b;    --执行成功

select * from B;    --执行成功

select * from "b";  --执行成功

select * from "B";  --执行成功

更多资讯请上达梦技术社区了解: https://eco.dameng.com

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值