MySQL:为什么我的表名在phpmyadmin中被转换成小写?
最近,很多MySQL用户在使用phpmyadmin时遇到了一个问题,他们的表名在phpmyadmin中显示为全部小写。这是为什么呢?我们来探讨一下。
阅读更多:MySQL 教程
MySQL的命名约定
首先,需要了解的是MySQL的命名约定。在MySQL中,关键字、表名、列名等都是区分大小写的。但是,操作系统和文件系统可能会把大小写视为同一字符。
在Linux和Unix系统中,文件名对大小写敏感。在Windows系统中,则对大小写不敏感。所以,当MySQL在Windows系统中运行时,它默认将所有的表名、列名等都转换成了小写。而在Linux和Unix系统中,MySQL不会自动把表名转换成小写。
phpmyadmin的设置
现在,我们来看看phpmyadmin为什么会将表名转换成小写。实际上,phpmyadmin并没有对MySQL的表名做任何修改,它只是默认把它们转换成小写。
这是因为,在phpmyadmin的默认设置中,启用了“强制小写表名”选项。这个选项的含义是强制将所有的表名都转换成小写。如果你想禁用这个选项,可以进入phpmyadmin的设置页面,在某些版本中被称为“config.inc.php”文件,在这个文件中,找到以下这行代码:
将其修改为:
这样,phpmyadmin就不会强制转换表名了。
总结
在MySQL中,表名是区分大小写的,但是在Windows系统中MySQL会默认将所有的表名都转换成小写。在phpmyadmin中,默认开启了“强制小写表名”选项,导致MySQL在Windows系统中运行时,所有的表名都会被转换成小写。
如果你不想让phpmyadmin强制转换表名,可以修改它的设置,将“$cfg[‘ForceSmallImages’]”改为false即可。