文档章节

记有一次使用mybatis时mysql不区分大小写

sluggarddd
 sluggarddd
发布于 2016/04/12 15:37
字数 443
阅读 95
收藏 0

    是这样的,我们的数据库都是有专门的人管理的,所以一直也没怎么纠结他的配置,反正已经被别人优化过了。知道有一天,偶然的机会下发现查询过程中mysql在查询过程中,对where中的条件并没有区分大小写。因为还没有遇到这种情况,当时真是一副日了狗的表情。

    当时使用的是Spring+Mybatis,很自然,我把锅丢给了Mybatis,什么玩意儿!居然不区分大小写!然而找了大半圈发现并没有人因为使用了Mybatis出现了这个问题,也没有在文档中找到查询时对于参数的限制。

    于是就上segmentfault上提问了,然后就忘掉了这件事,今天登陆发现有回答解决我的疑惑,所以来记录一下。

    问题出在mysql的设置身上,当时也并非没有怀疑是mysql的问题,然而一样是搜索无果放弃了这个因素。

    好吧,原因也很简单,只是顺便发发牢骚。

    其实跟建立数据库的时候选择的排序规则有关。

    utf8_bin 将字符串中的每一个字符用二进制数据存储,区分大小写。

    utf8_genera_ci 不区分大小写,ci为case insensitive的缩写,即大小写不敏感。

    utf8_general_cs 区分大小写,cs为case sensitive的缩写,即大小写敏感。

    如果想自在几个字段上用改变这些特性,设置列的排序规则即可。

    相信碰到问题的已经恍然大悟了。

    接下来自己调试测试吧。

© 著作权归作者所有

共有 人打赏支持
sluggarddd
粉丝 7
博文 14
码字总数 11821
作品 0
程序员
私信 提问
Mybatis 分页插件 4.0.2 发布

Mybatis 分页插件 - PageHelper 如果你也在用Mybatis,建议尝试该分页插件,这一定是最方便使用的分页插件。 分页插件支持任何复杂的单表、多表分页,部分特殊情况请看重要提示。 想要使用分...

Liuzh_533
2015/11/03
7.6K
14
mybatis自增主键配置

mybatis自增主键配置 mybatis进行插入操作时,如果表的主键是自增的,针对不同的数据库相应的操作也不同。基本上经常会遇到的就是 Oracle Sequece 和 MySQL 自增主键,至于其他的手动生成唯一...

李永china
2016/05/20
4
0
linux下Mysq表名的大小写问题解析

这些天把项目都转移到新的Linux服务器上来,发现总是报无法找到表的错误。 ssh进去mysql下: 然后发现卧槽有啊。。。 回来发现输出信息均为未找到“TUSER”大写字样。回来想可能是用mybatis...

aijfanta
2016/04/16
88
0
MyBatis:获取插入记录的自增主键

我们知道MySql中主键可以设成auto_increment,也就是自增主键,每当新增一条记录,主键值自动加1。 在MyBatis中,执行insert,返回值为受影响的语句行数,此操作跟JDBC一致。 但是如果应用中...

kolbe
2015/09/30
3.4K
1
Mysql大小写敏感的问题

一、1 CREATE TABLE NAME(name VARCHAR(10)); 对这个表,缺省情况下,下面两个查询的结果是一样的: SELECT * FROM TABLE NAME WHERE name='clip'; SELECT * FROM TABLE NAME WHERE name='C......

zhwj407906450
2014/10/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Integer使用双等号比较会发生什么

话不多说,根据以下程序运行,打印的结果为什么不同? Integer a = 100;Integer b = 100;System.out.println(a == b);//print : trueInteger a = 200;Integer b = 200;System.out.pr...

兜兜毛毛
36分钟前
1
0
CockroachDB

百度云上的CockroachDB 云数据库 帮助文档 > 产品文档 > CockroachDB 云数据库 > 产品描述 开源NewSQL – CockroachDB在百度内部的应用与实践 嘉宾演讲视频及PPT回顾:http://suo.im/5bnORh ...

miaojiangmin
47分钟前
2
0
I2C EEPROM驱动实例分析

上篇分析了Linux Kernel中的I2C驱动框架,本篇举一个具体的I2C设备驱动(eeprom)来对I2C设备驱动有个实际的认识。 s3c24xx系列集成了一个基于I2C的eeprom设备at24cxx系列。at24cxx系列芯片包...

yepanl
49分钟前
3
0
设计模式之工厂模式

本篇博文主要翻译这篇文章: https://www.journaldev.com/1392/factory-design-pattern-in-java 由于翻译水平有限,自认为许多地方翻译不恰当,欢迎各位给出宝贵的建议,建议大家去阅读原文。...

firepation
今天
8
0

中国龙-扬科
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部