mysql怎样不区分_如何设置mysql的表不区分你大小写

在Linux上,MySQL默认对数据库表名区分大小写。要改变此设置,只需在my.cnf配置文件中添加`lower_case_table_names=1`,然后重启MySQL服务,即可实现表名不区分大小写。
摘要由CSDN通过智能技术生成

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)

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值