lower_case_table_names

关于mysql的表名/字段名/字段值是否区分大小写的问题

て烟熏妆下的殇ゞ 提交于 2019-12-01 16:14:42
1、mysql默认情况下是否区分大小写,使用show Variables like '%table_names'查看lower_case_table_names的值,0代表区分,1代表不区分。 2、mysql对于类型为varchar数据默认不区分大小写,但如果该字段以“*_bin”编码的话会使mysql对其区分大小写。 3、mysql对于字段名的策略与varchar类型数据相同。即:默认不区分大小写,但如果该字段是以“*_bin”编码的话会使mysql对其区分大小写。 4、mysql对于表名的策略与varchar类型数据相同。即:默认不区分大小写,但如果该表是以“*_bin”编码的话会使mysql对其区分大小写。 5、如果按照第一项查看lower_case_table_names的值为0,但需要让mysql默认不区分大小写的话,需要在mysql配置文件中添加参数并重启mysql数据库。mysql配置文件的修改内容如下: [mysqld] ... lower_case_table_names = 1 6、注意:表和字段的编码尽量继承数据库的编码(不明显指定即继承),以免引起混乱。 来源: oschina 链接: https://my.oschina.net/u/693/blog/41851