在MySQL中,数据库对应数据目录中的目录。数据库中的每个表至少对应数据库目录中的一个文件(也可能是多个,取决于存储引擎)。因此,所使用操作系统的大小写敏感性决定了数据库名和表名的大小写敏感性。这说明在大多数Unix中数据库名和表名对大小写敏感,而在Windows中对大小写不敏感。 一个显著的例外情况是Mac OS X,它基于Unix但使用默认文件系统类型(HFS+),对大小写不敏感。

在windows下表名不区分大小写,所以在导入数据后,有可能所有表名均为小写,而再从win导入linux后,在调用时就容易出现大小写的问题。例如:

第一点:程序调用表名为:codetc_Web;

第二点:导入win后变为codetc_web;

第三点:再导入linux后也是codetc_web,此时linux会区分表名的大小写,则导致该表无法读取。

在linux下mysql表名大小写问题解决方法:

修改my.cnf,一般位于:/etc/my.cnf,在该文件中找到[mysqld]节下加入如下语句(注意如果已经存在该语句,请将值改为1即可):

lower_case_table_names=1

1、Linux下mysql安装完后是默认:区分表名的大小写,不区分列名的大小写;

2、用root帐号登录后,在/etc/my.cnf 中的[mysqld]后添加添加lower_case_table_names=1,重启MYSQL服务,这时已设置成功:不区分表名的大小写;

lower_case_table_names 参数详解:

lower_case_table_names = 0或1

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

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

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

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

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

4、变量名也是严格区分大小写的;

MySQL在Windows下都不区分大小写的,如果需要在查询时区分字段值的大小写,则需要将查询字段值需要设置BINARY属性,设置的方法有如下几种方法:

(1)创建时设置:

CREATE TABLE T(A VARCHAR(10) BINARY);

(2)使用alter修改:

ALTER TABLE `tablename` MODIFY COLUMN `cloname` VARCHAR(45) BINARY;

(3)mysql table editor中直接勾选BINARY项。

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

select * from table_name where binary a like 'a%'

select * from table_name where binary a like 'A%'

也可以在建表时,加以标识

create table table_name(

a varchar (20) binary

)

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对聚米学院的支持。如果你想了解更多相关内容请查看下面相关链接

如何查询mysql数据库大小写敏感_MySQL数据库大小写敏感的问题相关推荐

  1. mysql大小写敏感_MySQL数据库大小写敏感的问题

    在MySQL中,数据库对应数据目录中的目录.数据库中的每个表至少对应数据库目录中的一个文件(也可能是多个,取决于存储引擎).因此,所使用操作系统的大小写敏感性决定了数据库名和表名的大小写敏感性.这说明 ...

  2. mysql select表达式_MySQL数据库SELECT查询表达式解析

    数据的管理在很大一部分是在进行查找工作,而SELECT占据了很大的一部分 SELECT select_expr [,select_expr...] [ FROM table_reference WHE ...

  3. 用mysql查询女生中最高分_mySql数据库基础

    SQL 结构化查询语言. MySQL 数据库管理系统. SQL Server 微软的数据库管理系统. Oracle(甲骨文) 数据管理系统. show databases; 显示数据库管理系统中所有数 ...

  4. mysql数据库别名_MySQL数据库表名、列名、别名区分大小写的问题

    MySQL在Linux下数据库名.表名.列名.别名大小写规则是这样的: 1.数据库名与表名是严格区分大小写的: 2.表的别名是严格区分大小写的: 3.列名与列的别名在所有的情况下均是忽略大小写的: 4 ...

  5. mysql 列名大写_MySQL数据库表名、列名、别名区分大小写的问题

    [size=xx-large]MySQL在Linux下数据库名.表名.列名.别名大小写规则是这样的: 1.数据库名与表名是严格区分大小写的: 2.表的别名是严格区分大小写的: 3.列名与列的别名在所有 ...

  6. mysql数据库语法_MySQL数据库基本语法

    SQL WHAT(SQL是什么?) Structured Query Language:结构化查询语⾔ WHY(为何要使用SQL?) 难道仅仅使用SQL Server Management Studi ...

  7. Mysql常用词汇_mysql 数据库常用单词

    说明:以下单词可能有多种含义,此文档只针对编程做解释.单词不多,熟能生巧,每日认真读读写写,效果不错.如有错误,请谅解并指出,谢谢大家! 黄金超 2017-4-7 连接MySQL数据库: mysql ...

  8. centos72安装mysql配置密码_MySQL数据库之170419、Centos7下完美安装并配置mysql5.6

    本文主要向大家介绍了MySQL数据库之170419.Centos7下完美安装并配置mysql5.6 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. linxu环境: centos ...

  9. mysql 数据库事务处理_MySQL数据库事务及其原理

    基本概念 MySQL 事务主要用于处理操作量大,复杂度高的数据. 银行转账是经典的解释事务的例子.用户A给用户B转账5000元主要步骤可以概括为如下两步. 第一,账户A账户减去5000元: 第二,账户 ...

最新文章

  1. 第5章 图像分类的数据集
  2. randomAccessFile
  3. 零基础Java学习之初始化块
  4. 禅修笔记——硅谷最受欢迎的情商课
  5. 怎么在Linux中telnet服务器,怎么利用Telnet连接Linux服务器
  6. 用git进行项目搭建
  7. Macosx Setdns
  8. $.ajax 发送请求,JavaScript之Ajax-2 Ajax(使用Ajax发送get请求、使用Ajax发送post请求)
  9. 03 Android应用界面编程
  10. 复制Excel分类汇总结果的三种方法
  11. linux内核压缩制作bzImage
  12. Python+pyplot绘制带文本标注的柱状图
  13. C语言中利用联合体巧妙处理数据
  14. 我的世界java手机_我的世界Java安卓版下载_我的世界Java手机版官方下载_牛游戏网...
  15. Java字符串查找第一个不重复字符_java如何实现获取字符串中第一个出现不重复的字符...
  16. 怎样计算期货交易盈亏(期货交易盈利怎么算)
  17. Office365上启用Skype For Business并实现本地AD用户登录
  18. 国内最好用的短网址推荐(2022年最新整理)
  19. sleep() 和 wait() 有什么区别
  20. Java8 新特性(下)

热门文章

  1. 2017 年崛起的 JavaScript 项目
  2. Android ZXing 二维码、条形码扫描介绍
  3. Java 实现查询数据库下载导出Excel详解
  4. iOS app崩溃率,如何解决线上闪退
  5. “达飞侠”来袭,达飞吉祥物形象正式发布
  6. Android 自定义彩色圆环,Android自定义View之酷炫数字圆环
  7. 可以给手机电池充电的鞋子
  8. python爬取网文存入txt文件
  9. cesium primitive添加模型
  10. Qt5.7以上调用虚拟键盘(支持中文),以及源码修改(可拖动,水平缩放)