Home > Database > Mysql Tutorial > body text

MySQL 大小写敏感_MySQL

WBOY
Release: 2016-05-31 08:47:15
Original
1194 people have browsed it

bitsCN.com

mysqld

lower_case_table_names=1

--------------------------------------------------------

http://blog.csdn.net/waterxcfg304/article/details/36665031

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)

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


bitsCN.com
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!