mysql表名大小写不敏感设置

问题描述

我使用navicat远程连接centos7主机创建数据库,设置
PV3Y1QK4FY{0@56Y59%D8ER.png

但是应用系统跑的时候sql对表名大小写敏感,例如sys_log表,使用sys_Log就会找不到表,不知道怎么回事,我一直以为设置utf8_general_ci就可以做到表名不敏感,其实不是的,这是我的一个误区,记录一下,尴尬。。。。,为什么我会这样认为,因为本地的mysql我从来没有做过别的设置,但是我写的应用却没有报这个错,依然能够正确的访问表,一脸蒙比

简记

ci是 case insensitive, 即 "大小写不敏感", a 和 A 会在字符判断中会被当做一样的;bin 是二进制, a 和 A 会别区别对待.例如你运行:SELECT * FROM table WHERE txt = 'a'那么在utf8_bin中你就找不到 txt = 'A' 的那一行, 而 utf8_general_ci 则可以.

解决方法

vim /etc/my.cnf

# The MySQL server  
[mysqld]  
lower_case_table_names=1 

重启sql服务

systemctl restart mysql
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1、引言 数据库设计过程中表、字段等的命名规范也算是设计规范的一部分,不过设计规范更多的是为了确保数据库设计的合理...
    SnowflakeCloud阅读 41,286评论 0赞 48
  • 1.创建文件夹 !/bin/sh mkdir -m 777 "%%1" 2.创建文件 !/bin/sh touch...
    BigJeffWang阅读 10,582评论 3赞 53
  • 什么是数据库? 数据库是存储数据的集合的单独的应用程序。每个数据库具有一个或多个不同的API,用于创建,访问,管理...
    chen_000阅读 4,184评论 0赞 19
  • 胡博博士,安徽医科大学第一附属医院骨科主治医师、德国海德堡大学骨科学博士 在临床上会有患者说后背疼肩部疼,也有部分...
    易舒清阅读 685评论 0赞 0
  • 花样滑冰教练叶夫根尼·普留申科接受记者采访时说他将开始和两次世锦赛奖牌得主塞拉菲玛·萨哈伊诺维奇合作。 “她和我一...
    云游四方的旅人阅读 202评论 0赞 0

友情链接更多精彩内容