MySQL数据库表大小写不敏感处理,看完之后,大部分程序员收藏了

MySQL数据库表大小写不敏感处理,看完之后,大部分程序员收藏了

MySQL大小写敏感的控制

mysql是通过lower_case_table_names参数来控制大小写敏感的

1:参数含义

lower_case_table_names: 此参数不可以动态修改,必须重启数据库

lower_case_table_names = 1 表名存储在磁盘是小写的,但是比较的时候是不区分大小写

lower_case_table_names=0 表名存储为给定的大小和比较是区分大小写的

lower_case_table_names=2, 表名存储为给定的大小写但是比较的时候是小写的

2 大小写区分规则

linux下:

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

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

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

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

windows下:

​ 都不区分大小写

Mac OS下(非UFS卷):

​ 都不区分大小写

案列:

数据库中存在edu_website_images表

select * from edu_website_images

MySQL数据库表大小写不敏感处理,看完之后,大部分程序员收藏了

通过大写查询报错不存在

select * from EDU_WEBSITE_IMAGES

MySQL数据库表大小写不敏感处理,看完之后,大部分程序员收藏了

如何处理?

配置mysql配置文件

vi /etc/my.cnf 加入一行lower_case_table_names = 1

MySQL数据库表大小写不敏感处理,看完之后,大部分程序员收藏了

  1. //重启mysqlservice mysql restart 

然后

  1. show variables like '%lower%'; 

MySQL数据库表大小写不敏感处理,看完之后,大部分程序员收藏了

有可能结果是上面的没改过来...

我们把数据库导出,重新创建一下数据库结果就正确了

MySQL数据库表大小写不敏感处理,看完之后,大部分程序员收藏了

【编辑推荐】

  1. Oracle发布全球最快的数据库机器Exadata X8M
  2. Oracle和MySQL的JDBC到底有多慢?
  3. 数据库缓存最终一致性的四种方案
  4. 几千万记录,数据库表结构如何平滑变更?
  5. 分享一份MySQL思维导图--MySQL数据库脉络分析

【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0

dawei

【声明】:天津站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。