暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

DM达梦数据库字符串比较大小写敏感

原创 达梦 2021-01-31
1864

关于字符串比较大小写敏感主要涉及到两个方面的内容:

  1. 对字段的值比较而言

假如表 Test 中有如下两条记录:

c1   c2
1 a
2 A

同样的查询语句:select * from Test where c2 = 'a';

在大小写不敏感的库中会查出如下的两条记录:

c1   c2
1 a
2 A

而在大小写敏感的库中则只会查出如下的一条记录:

C1   C2
1 a
  1. 对于表名、字段名而言

在设置为大小写敏感的库中进行查询的时候,可能经常会遇到无效的表名或列名的问题,下面针对这种情况进行说明。

  • 如果使用 DM 管理工具图形界面建表的话建议表名和字段名都使用大写。因为使用图形界面建表相当于使用语句建表的时候加了双引号的,会固定住大小写。如果写成小写,那么就是小写了,在查询的时候也需要加双引号,否则就有可能报无效的表名或列名的问题,比较麻烦。
  • 如果使用脚本建表的话,如果表名和字段名没有加双引号的话都会被系统自动转换成大写。

如:create table test(a int);系统会自动把表名 test,字段名 a 转换成大写,处理方式与 Oracle 数据库一致。所以针对大小写敏感的库,在使用建表脚本或者通过查询脚本进行查询的时候建议统一不要写双引号,让系统统一自动都转化为大写。

  • 以上两点主要针对大小写敏感的库而言,大小写不敏感的库则不存在上述问题。

总结:基于以上两点,在初始化数据库的过程中就可以对字符串比较大小写敏感这个参数做出合理的选择了。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论