我在Windows 10上使用MySQL Server 5.7和MySQL Workbench 6.3 CE。我在多个网站上筛选了几页与此相关的问题,包括Stack Overflow,但无法弄清楚我可以在哪里修改服务器以便它is配置为lower_case_table_names = 2,而不是lower_case_table_names = 1.
我看到的很多答案都指向找到以' my.ini'或者' my.cnf',我都无法在光盘上找到它们。说实话,我是SQL的初学者,很难理解许多用户指出的教程页面,即:
http://dev.mysql.com/doc/refman/5.7/en/identifier-case-sensitivity.html
我学习的几乎所有资源都引用了大写的表名,列等,这就是我想使用大写和小写的原因。
例如,如果我创建一个名为 EmployeeInfo 的表和几列,当我点击"应用":
时会出现此错误Apply Changes to Object
The server is configured with lower_case_table_names=1, which only allows lowercase characters in schema and table names. The object will be created as 'employeeinfo'.
我希望将表称为 EmployeeInfo 。我不希望它是小写的。但是,我无法找到所谓的“my.ini”,或“my.cnf”#39;其他答案中提到的与此问题有关的文件。
或者,当您进一步使用SQL时,习惯使用小写字体是最佳做法吗?
修改
我相信我找到了所谓的'my.ini'文件虽然没有' ini'文件类型。它被标记为'配置设置'。
但是,我找不到与' lower_case_table_name = 1'相关的任何内容。在搜索之后。
编辑2:
我找到了' lower_case_table_names'系统选项文件中的选项,并将其更改为' 2'。
但是,当我点击“应用”时,它会告诉我:
无法保存配置文件
错误如下所示:
答案 0 :(得分:1)
当您升级到最新版本时,此问题与Docker本身有关,升级时与我有关。尝试将Docker降级到您的早期版本。
答案 1 :(得分:0)
MySQL 5.7规范通常似乎recommend sticking with lowercase table names。
...为了避免这种差异造成的问题,最好采用一个 一致的约定,例如总是创建和引用 使用小写名称的数据库和表。这个惯例是 建议最大程度的便携性和易用性......
无论如何,以下是您查看变量设置的方式:
SHOW variables like 'lower_case_table_names';
以下是更改该变量设置以允许CamelCase的方法:
lower_case_table_names = 1 (<- put in your mysql config file)
restart mysql