唠嗑部分
面试题:MySQL表名和字段区分大小写嘛?
这个问题我们应该这样回答,MySQL列名是不区分大小写的,表名在Windows环境下默认不区分大小写,在Linux环境默认区分大小写,提到默认两个字,那么就说明是可配置的
很多面试题网上都会有标准答案,那么小白为什么会单独来说呢,不知道大伙在背面试题的时候有没有发现,背的东西总会忘记的,自己遇到过、动过手才会记得更加牢固,基本都是知道答案,不知道怎么修改
之前小白在调试系统的时候啊,会使用虚拟机中安装的MySQL,但是有一次由于sql映射文件中表名意外的大写了,造成报错表名不存在,如
sql1
select * from USER;
sql2
select * from user;
sql1与sql2在windows环境运行结果一致,但是默认在Linux环境下却不行
言归正传
那么对于MySQL来讲,我们如何在Linux环境下配置,使其不区分大小写呢?
Linux环境在/etc目录下有个my.cnf,MySQL的配置文件,在mysqld选项加入 lower_case_table_names=1
即表名不区分大小写
[client]
default-character-set=utf8
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
character-set-server=utf8
lower_case_table_names=1
修改后重启MySQL
结语
1、MySQL列名是不区分大小写的。
2、MySQL表名是否区分大小写是可配置的,在windows环境下默认不区分大小写,在Linux环境下默认区分大小写。
3、可在配置文件my.cnf中添加选项lower_case_table_names=1使其表名不区分大小写文章来源:https://www.toymoban.com/news/detail-465942.html
4、制作不易,一键三连再走吧,您的支持永远是我最大的动力!文章来源地址https://www.toymoban.com/news/detail-465942.html
到了这里,关于面试官:MySQL表名和字段区分大小写嘛的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!