MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:

1、数据库名与表名是严格区分大小写的;
2、表的别名是严格区分大小写的;
3、列名与列的别名在所有的情况下均是忽略大小写的;
4、变量名也是严格区分大小写的;MySQL在Windows下都不区分大小写。
windows下mysql默认是不支表名大小写的,也就是表名大小写不敏感。用PHPmyadmin创建的驼峰式表名,全部被强制成小写。mysql表名大小写敏感的参数:lower_case_table_names。在[mysqld]下加上lower_case_table_names=0即可。###[mysqld]lower_case_table_names=0###win下默认值为1,就是说mysql会把表名主动lower。
在MySQL中,默认情况下,表字段是不区分大小写的。这意味着,如果你创建了一个名为"Name"的字段,你可以使用"Name"、"name"或"NAME"来引用它,它们都会被认为是相同的字段。然而,这种行为可以通过设置表的字符集和校对规则来改变。
如果你使用了区分大小写的字符集和校对规则,那么表字段将会区分大小写。要注意的是,当使用区分大小写的字段时,需要使用正确的大小写来引用它们,否则会导致错误。
数据库和表名在 Windows 中是大小写不敏感的 ,而在大多数类型的 Unix 系统中是大小写敏感的
Windows 版的 MySQL 默认继承 os 的大小写习惯,即使 SQL中有区分,在导入的时候都会被转为小写,如果今后再将此数据库导出就可能存在大小写的问题。my.ini 中有属性lower_case_table_names 可以更改此默认值,要严格区分大小写,将此项的置设置为2,再重启 MySQL 服务即可。
你可以在MySQL的配置文件(my.cnf或my.ini,取决于你的操作系统和MySQL的安装方式)中修改[mysqld]部分的lower_case_table_names配置项。
如果设为0,MySQL会将所有的表名和数据库名都转化为大写。如果设为1,MySQL会将所有的表名和数据库名都转化为小写。如果设为2,MySQL会根据创建时的大小写来保留表名和数据库名。
修改后需要重启mysql服务器使得设置生效。
注意:在修改这个配置项之前,你需要考虑你的应用程序是否依赖于大小写不敏感的数据库名或表名。如果存在这样的情况,修改这个设置可能会导致问题。2. 在查询时使用引号:
如果你想在查询时区分大小写,可以在字段名或表名周围使用引号。例如:
在这种情况下,MySQL会区分MyField和myfield,但不会区分MyTable和mytable。如果没有使用引号,MySQL将不区分大小写。例如:
在这种情况下,MySQL将不区分MyField和myfield,也不区分MyTable和mytable。