DM数据库大小写敏感问题思考

本文探讨了达梦数据库在大小写敏感性方面的特点。在大小写不敏感的实例中,表名虽可使用大小写区分,但实际上只允许存在一个同名表,查询时不区分大小写。而在大小写敏感的实例中,表名会自动转为大写,创建同名表需使用双引号,DML操作时需明确指定大小写。了解这些特性对于数据库管理和开发至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、DM数据库大小写敏感问题思考

1.判断数据库大小写敏感

(1)当你在安装完DM数据库后,开始初始化实例时就会有选项

(字符串比较大小写敏感),这个是实例一旦创建好就无法再次修改的选项,请根据需要选择。

(2)如果实例创建时间比较长,忘记了大小写是不是敏感了,可以在manager工具里查看。

我们在登录用户后,右击我们的LOCALHOST,点击管理服务器,看到我们的大小写敏感选项

 

 或者是在查询里使用语句

SELECT SF_GET_CASE_SENSITIVE_FLAG();

注:1为大小写敏感,0为大小写不敏感 

2.大小写不敏感的实例

(1)创建表

我们先创建一个名为test10的表

 

 我们再创建一个名为TEST10的表

我们使用了大小写区分这两张表,但还是只能存在一张同名的表

(2)插入数据

我们向表test10插入一条数据,并查看,可以看到我们是插入成功了

 

我们向表TEST10插入一条数据,并查看,可以看到我们是插入成功

 

(3)小结

大小写不敏感的数据库中:

DML或DDL操作时:

1)无论对不对表名或列名添加"",表名和列名的大小写形式不会发生变化,大写形式就是大写形式,小写形式就是小写形式;

2)不允许存在同名的数据库对象,即使大小写不同,默认也只能存在一个;

3)查询时,""界定符不区分大小写,界定符中的查询或过滤条件即使是大写或小写,都可以查询到预期的结果集,进行DML操作时依旧。

3.大小写敏感的实例

(1)创建表

我们先创建一个名为test10的表

 

可以看到,我们SQL语句创建的表名为test10,但实际创建的表为TEST10,这就是大小写敏感所导致的。

这我们还是创建test10,但是用””引起来,可以看见我们成功创建了

 

(2)插入数据

我们向表test10插入一条数据,并查看,可以看到是报错了,从这里也可以看出,这是大小写敏感所产生的问题。

 

我们向表TEST10插入一条数据,并查看,可以看到我们是插入成功

了。

 

(3)小结

大小写敏感的数据库中:

DML或DDL操作时:

1)如果不对表名或列名添加"",那么表名和列名都自动转换为大写形式;

2)对其进行DML操作时,需要利用”“指定表名和字段名,否则默认会认定以大写形式去查询对象。

想了解更多达梦数据库相关信息,欢迎访问达梦技术社区:首页 | 达梦云设配中心(dameng.com)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值