MySQL中的表名是否区分大小写?

| MySQL中的表名是否区分大小写? 在Windows开发机上,我拥有的代码能够查询我的表,这些表看起来都是小写的。当我在数据中心中部署到测试服务器时,表名似乎以大写字母开头。 我们使用的服务器都在Ubuntu上。     
已邀请:
一般来说: 数据库和表名在Windows中不区分大小写,在大多数Unix版本中都不区分大小写。   在MySQL中,数据库对应于数据中的目录   目录。数据库中的每个表至少对应一个   数据库目录中的文件。因此,区分大小写   底层操作系统在   数据库和表名。 可以使用系统变量
lower_case_table_names
配置表名在磁盘上的存储方式。 (在[mysqld]下的my.cnf配置中) 阅读本节:10.2.2标识符区分大小写以获取更多信息。     
数据库和表名在Windows中不区分大小写,在大多数Unix或Linux版本中都不区分大小写。 要解决此问题,请将lower_case_table_names设置为1   lower_case_table_names = 1 无论您如何编写,这都会使您的所有表变成小写     
MySQL中的表名是文件系统条目,因此如果基础文件系统是不区分大小写的。     
它取决于系统变量“ 0”:
show variables where Variable_name=\'lower_case_table_names\'
有三个可能的值:
0
-
CREATE TABLE
CREATE DATABASE
语句中指定的字母大写。名称比较区分大小写。
1
-表名以小写形式存储在磁盘上,名称比较不区分大小写。
2
-在
CREATE TABLE
CREATE DATABASE
语句中指定的字母大小写,但是MySQL在查找时将它们转换为小写。 名称比较不区分大小写。 文献资料     
在ѭ10找到文件 通过添加以下行来编辑文件:
[mysqld]
lower_case_table_names=1
sudo /etc/init.d/mysql restart
运行
mysqladmin -u root -p variables | grep table
以检查
lower_case_table_names
现在是
1
您可能需要重新创建这些表才能使其正常工作     

要回复问题请先登录注册