一、

1、 CREATE TABLE NAME(name VARCHAR(10));

对这个表,缺省情况下,下面两个查询的结果是一样的:

SELECT * FROM TABLE NAME WHERE name='clip';

SELECT * FROM TABLE NAME WHERE name='Clip';

MySql默认查询是不区分大小写的,如果需要区分他,必须在建表的时候,Binary标示敏感的属性.

CREATE TABLE NAME(

name VARCHAR(10) BINARY

);

2、 在SQL语句中实现 SELECT * FROM TABLE NAME WHERE BINARY name='Clip';

3、 设置字符集:

utf8_general_ci --不区分大小写

utf8_bin--区分大小写

二、 MySQL在windows下是不区分大小写的,将script文件导入MySQL后表名也会自动转化为小写,结果再 想要将数据库导出放到linux服务器中使用时就出错了。

因为在linux下表名区分大小写而找不到表,查了很多都是说在linux下更改MySQL的设置使其也不区分大小写,但是有没有办法反过来让windows 下大小写敏感呢。

其实方法是一样的,相应的更改windows中MySQL的设置就行了。

具体操作:

在MySQL的配置文件my.ini中增加一行:

lower_case_table_names = 0

其中 0:区分大小写,1:不区分大小写

MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:

1、数据库名与表名是严格区分大小写的;

2、表的别名是严格区分大小写的;

3、列名与列的别名在所有的情况下均是忽略大小写的;

4、变量名也是严格区分大小写的; MySQL在Windows下都不区分大小写

http://www.jb51.net/article/61591.htm

当我们输入不管大小写都能查询到数据,例如:输入 aaa 或者aaA ,AAA都能查询同样的结果,说明查询条件对大小写不敏感。

解决方案一:

于是怀疑Mysql的问题。做个实验:直接使用客户端用sql查询数据库。 发现的确是大小不敏感 。

通过查询资料发现需要设置collate(校对) 。 collate规则:

*_bin: 表示的是binary case sensitive collation,也就是说是区分大小写的

*_cs: case sensitive collation,区分大小写

*_ci: case insensitive collation,不区分大小写

解决方法。

1.可以将查询条件用binary()括起来。 比如:

select * from TableA where binary columnA ='aaa';

2. 可以修改该字段的collation 为 binary

比如:

ALTER TABLE TABLENAME MODIFY COLUMN COLUMNNAME VARCHAR(50) BINARY CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL;

解决方案二:

mysql查询默认是不区分大小写的 如:

select * from some_table where str=‘abc';

select * from some_table where str='ABC';

得到的结果是一样的,如果我们需要进行区分的话可以按照如下方法来做:

第一种方法:

要让mysql查询区分大小写,可以:

select * from some_table where binary str='abc'

select * from some_table where binary str='ABC'

第二方法:

在建表时时候加以标识

create table some_table(

str char(20) binary

)

原理:

对于CHAR、VARCHAR和TEXT类型,BINARY属性可以为列分配该列字符集的 校对规则。BINARY属性是指定列字符集的二元 校对规则的简写。排序和比较基于数值字符值。因此也就自然区分了大小写。

以上通过两种方案解决了MySql查询不区分大小写的问题,希望对大家有所帮助,更多有mysql数据查询问题,请登录本站学习。

http://www.jb51.net/article/70884.htm

mysql字符串区分大小写么_mysql字符串区分大小写的问题-阿里云开发者社区相关推荐

  1. 不属于python标准库的是_《Python Cookbook(第2版)中文版》——1.10 过滤字符串中不属于指定集合的字符-阿里云开发者社区...

    本节书摘来自异步社区<Python Cookbook(第2版)中文版>一书中的第1章,第1.10节,作者[美]Alex Martelli , Anna Martelli Ravenscro ...

  2. 线上阿里云mysql慢_MySQL · 案例分析 · RDS MySQL线上实例insert慢常见原因分析-阿里云开发者社区...

    概述 insert慢是经常被问到的问题,笔者尝试在本文中对这个问题做一个分类梳理,列举的线上例子会做简化,希望对读者有所启发. 注意:因为阿里云MySQL线上实例还是以RDS 5.6为主体,本文的分析 ...

  3. mysql 分布式 安装_mysql分布式集群安装-阿里云开发者社区

    概述 MySQL Cluster旨在提供具有高可用性和低延迟的MySQL兼容数据库. MySQL Cluster技术通过NDB(网络数据库)和NDBCLUSTER存储引擎实现,并为MySQL数据库系统 ...

  4. mysql 接口访问_MySQL的数据库访问接口-阿里云开发者社区

    大部分流行的关系数据库产品采用的都是 C/S 架构.因此,应用程序要访问数据库的数据就必须和各种数据库客户端(也称为数据库访问接口)打交道.可以这么认为,每一种流行的编程语言都需要一个对应的数据库访问 ...

  5. mysql 修复表 阿里云_MySql数据表修复方法-阿里云开发者社区

    mysqld进程在一个写入当中被杀死.计算机的意外关闭(例如,如果计算机掉电).一个硬件错误这章描述如何检查和处理在MySQL数据库中的数据损坏.如果你的表损坏很多,你应该尝试找出其原因!见G.1 调 ...

  6. mysql 参数调整_mysql需要调整的参数-阿里云开发者社区

    Mysql需要调整的参数 #以 mysql 5.6版本示例讲解 一.Innodb设置 innodb_buffer_pool_size:保存innodb数据和索引在该buffer中, 对专用mysql服 ...

  7. mysql聚合函数要分组吗_mysql聚合函数和分组-阿里云开发者社区

    文章实例的数据表,来自上一篇博客<mysql简单查询>:http://blog.csdn.net/zuiwuyuan/article/details/39349611 一. 聚合函数 聚合 ...

  8. mysql数据一条复制_Mysql 复制一条数据-阿里云开发者社区

    从不同的表复制 insert into 表1 select * from 表2 where id =** ; 同一张表中复制(无主键) insert into 表1 select * from 表2 ...

  9. mysql providername_c#访问各数据库的providerName各驱动-阿里云开发者社区

    如果为Mysql 数据库--->providerName="MySql.Data.MySqlClient"(没装mysql dotnet 安装版的话就得在C:\WINDOWS ...

  10. mysql my.cnf key_buffer_size_mysql5.6之key_buffer_size优化设置-阿里云开发者社区

    key_buffer_size指定索引缓冲区的大小,它决定索引处理的速度,尤其是索引读的速度.通过检查状态值Key_read_requests和Key_reads,可以知道key_buffer_siz ...

最新文章

  1. Microbiome:宏基因组分箱流程MetaWRAP分析实战和结果解读
  2. matlab 画一个矩形
  3. 【笔记】Linux就该这么学-第六课第四章
  4. github上关于机器学习的awesome项目(资源大全)
  5. 经典C语言程序100例之二七
  6. 分号与逗号的区别及举例_如何掌握分号的用法 和顿号有什么区别
  7. 云原生时代|分布式系统设计知识图谱(内含22个知识点)
  8. 洛谷——P2095 营养膳食
  9. ICCV 2019 | 旷视研究院提出行人搜索当前最佳新方法
  10. 分布式事务 - 梁飞的博客 - ITeye博客
  11. 如何利用Matlab完成数字1-9的语音识别
  12. java赛车小游戏代码_java版赛车小游戏源代码
  13. jmeter录制脚本
  14. camshift实现目标跟踪
  15. SpringBoot利用ELK实现日志收集
  16. 记录每天背的单词,准备考研。(2月21日)
  17. 如何部署在线团队协作系统kooteam(在线团队协作工具)
  18. windows10图片打开找不到内置图片查看器
  19. 12.26:有一种关系叫做“乔布斯与比尔盖茨”
  20. 科蒂斯控制器故障代码_科蒂斯控制器故障代码

热门文章

  1. 使用canvas实现360水球波动
  2. 前后端token机制 识别用户登录信息
  3. 测试用例的常用设计方法
  4. Mistakes(Updating)
  5. Java GC如何判断对象是否为垃圾
  6. 酷欧天气(CoolWeather)应用源码
  7. [编写高质量代码:改善java程序的151个建议]建议57 推荐在复杂字符串操作中使用正则表达式...
  8. 在共享DLL中使用MFC 和在静态库中使用MFC的区别
  9. Win32 树视图控件的基本使用
  10. 8086汇编复习1 - 并使用emu8086模拟器查看效果