网站地图    收藏   

主页 > 后端 > mysql数据库 >

如何设置mysql的表不区分你大小写 - mysql数据库栏

来源:自学PHP网    时间:2015-04-16 10:51 作者: 阅读:

[导读] Linux上安装MySQL默认是数据库的表大小写敏感的。修改很简单,只要该一个mysql的配置文件就可以了。mysql show tables; 43;-------------------------------------- 43;| Tables_in_cddl...

Linux上安装MySQL默认是数据库的表大小写敏感的。修改很简单,只要该一个mysql的配置文件就可以了。

mysql> show tables;
+--------------------------------------+
| Tables_in_cddl |
+--------------------------------------+
| a1_equipment |
| a1_equipment_batch |
| actionby |
| actionitem |
| actionitemcomments |
| actionitemdetail |
| actionitemstatus |
| cal_cost_element |
| cal_cost_element_stat |
| cal_statistics |
| changeduedate |
| commisstionstartup |
| copq |
| copq_category |
| costbreakdown |
| daily_statistic |
| dbstudy |
| dccddlist |
| define_cost_element |
| djpmomsactivity |
| drawing |
| dsystem_user |
| dtproperties |
| duser_rights |
| edcr |
| edcr_2week |
| edcr_status |
| edcrchild |
| engineering_action_tracking |
| engineering_action_tracking_analysis |
| fincostone |
| fincostonerpt |
| fincosttwo |
| fincosttworpt |
| fincostvariance |
| fincostvariancerpt |
| findataforchar |
| finemployee |
| finemployee20120910 |
| finemployeehist |
| finemployeehistback |
| finexportone |
| finexporttwo |
| finheadcountone |
| finheadcountonerpt |
| finheadcounttwo |
| finheadcounttworpt |
| finheadcountvariance |
| finheadcountvariancerpt |
| finhistversioncomment |
| finposition |
| finpositionhist |
| finpositionhistback |
| finpositon20120910 |
| flight |
| hotel |
| hrcontact |
| hy_temp |
| hyresponsetime |
| impacteddrawingnumber |
| jpmo_temp |
| jpmoresponsetime |
| meeting |
| relatededcrnumber |
| responsibleperson |
| revisedscheduledate |
| sm_temp |
| smresponsetime |
| sparepart |
| sysconstraints |
| syssegments |
| systemparameter |
| table_1_7_1 |
| table_1_7_2 |
| table_1_7_3 |
| table_1_7_3a |
| table_1_7_3b |
| table_1_7_3c |
| table_appendix28 |
| trend |
| trenddetail |
| visitor |
| visitprogram |
| vp_engdeliverablesreport |
+--------------------------------------+
84 rows in set (0.00 sec)

mysql> select count(*) from TREND;
ERROR 1146 (42S02): Table 'cddl.TREND' doesn't exist

从上面可以看出trend表是存在的,只不过是小写的保存在数据库里。

让MYSQL不区分表名大小写的方法其实很简单:

1.用ROOT登录,修改/etc/my.cnf

2.在[mysqld]下加入一行:lower_case_table_names=1

3.重新启动数据库即可

[root@chicago init.d]# vi /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-grant-tables
lower_case_table_names=1

[root@chicago init.d]# service mysql restart
Shutting down MySQL.. [ OK ]
Starting MySQL...................................... [ OK ]

mysql> select count(*) from TREND;
+----------+
| count(*) |
+----------+
| 19 |
+----------+
1 row in set (0.00 sec)

mysql> select count(*) from trend;
+----------+
| count(*) |
+----------+
| 19 |
+----------+
1 row in set (0.00 sec)

从上面可以看出,此时已经不区分大小写了。

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论