MySQL查询不能区分案例和案例解决方案(两个)

当我们输入数据时,不管怎样,我们可以查询数据,例如输入AAA或AAA,AAA可以查询相同的结果,表明查询条件对情况不敏感。

解决方案之一:



因此,MySQL的问题受到质疑。做一个实验:直接使用客户机用SQL查询数据库。

您需要通过查询数据建立整理(校对):

* _bin:代表二进制区分排序规则,也就是说它是区分大小写的

* _cs:敏感的排序,区分大小写

* _ci:大小排序,不区分大小写

u3002解

1。可以用二进制()来包含在查询条件中:


SELECT * FROM中二进制柱= 'AAA';


2。可以将此字段的排序规则修改为二进制。

例如:


tablename表修改列的列名varchar(50)二进制字符集utf8整理。


方案二:

MySQL查询默认是不区分大小写的,例如:


SELECT * FROM some_table,str =abc;
SELECT * FROM some_table在STR = ABC;


结果是一样的,如果我们需要区别,我们可以做如下:



第一种方法:

为了让MySQL查询区分大小写,您可以:




SELECT * FROM some_table二进制STR = ABC
SELECT * FROM some_table二进制STR = ABC


第二种方法:



在创建表时确定它




创建表some_table(
STR字符(20)二进制



原理:



对于char、varchar、和文本类型,二进制属性可以设置为栏目的角色分配校对规则。二进制属性是二元校对规则指定列的字符集的缩写。排序和比较的基础上的数字字符的值。因此,有案例和案例有着本质的区别。

以上两种解决方案解决了MySQL查询的不区分大小写的问题,希望能对您有所帮助。MySQL数据查询问题较多。请登录到这个站点学习。