开发者社区 问答 正文

何为字符串比较大小写敏感?

何为字符串比较大小写敏感?

展开
收起
茶什i 2019-11-20 14:19:54 1149 分享 版权
1 条回答
写回答
取消 提交回答
  • 关于字符串比较大小写敏感主要涉及到两个方面的内容: (1) 对字段的值比较而言 假如表Test中有如下两条记录 c1 c2 1 a
    2 A
    同样的查询语句:select * from Test where c2 = 'a'; 在大小写不敏感的库中会查出如下的两条记录 c1 c2 1 a
    2 A 而在大小写敏感的库中则只会查出如下的一条记录 C1 C2 1 a
    (2) 对于表名、字段名而言 在设置为大小写敏感的库中进行查询的时候,可能经常会遇到无效的表名或列名的问题, 下面针对这种情况进行说明。 (i) 如果使用DM管理工具图形界面建表的话建议表名和字段名都使用大写。因为使用图形界面建表相当于 使用语句建表的时候加了双引号的,会固定住大小写。如果写成小写,那么就是小写了,在查询的时候 也需要加双引号,否则就有可能报无效的表名或列名的问题,比较麻烦; (ii) 如果使用脚本建表的话,如果表名和字段名没有加双引号的话都会被系统自动转换成大写。 如:create table test(a int);系统会自动把表名test,字段名a转换成大写,处理方式与Oracle数据库一致。 所以针对大小写敏感的库,在使用建表脚本或者通过查询脚本进行查询的时候建议统一不要写双引号, 让系统统一自动都转化为大写; (iii) 以上两点主要针对大小写敏感的库而言,大小写不敏感的库则不存在上述问题。 总结:基于以上两点,在初始化数据库的过程中就可以对字符串比较大小写敏感这个参数做出合理的选择了。

    2019-11-20 14:20:27
    赞同 展开评论
问答地址: