查询后发现mysql默认配置是表明区分大小写的,如果要修改成不区分大小写,需要修改一下配置。
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、注意:表和字段的编码尽量继承数据库的编码(不明显指定即继承),以免引起混乱。 LINUX下的MYSQL默认是要区分表名大小写的 ,而在windows下表名不区分大小写 让MYSQL不区分表名大小写的方法其实很简单: 1.用ROOT登录,修改/etc/my.cnf 2.在[mysqld]下加入一行:lower_case_table_names=1 3.重新启动数据库即可具体 *** 作如下:一、linux中mysql大小写详情:
1、数据库名严格区分大小写
2、表名严格区分大小写的
3、表的别名严格区分大小写
4、变量名严格区分大小写
5、列名在所有的情况下均忽略大小写
6、列的别名在所有的情况下均忽略大小写
二、设置Mysql表名不区分大小写
1、切换到root用户
$
su
-
root
2、修改/etc/my.cof配置文件,
#
sed
-i
'/\[mysqld\]/a\lower_case_table_names=1'
/etc/my.cnf
lower_case_table_names参数详解:
0:区分大小写
1:不区分大小写
3、重启mysql
#
service
mysqld
restart
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)