MYSQL因为区分大小写而引起找不到表

    今天是相当郁闷,开发一直在本地mysql数据进行,完成后测试连接LINUX服务器数据库,结果一直报错找不到表!另我纳闷的是服务器数据库里明明是建了表的,用mysql控制台测试连接执行查询也没问题,可程序就是一直报错!

    于是开始反复测试找问题,刚开始以为是驱动或mysql版本不匹配等引起的原因,但是重新写了个JDBC连接执行查询发现没问题!说明驱动没问题!于是怀疑连接池的问题,于是将程序里的连接改成新写的JDBC连接,仍然出错!这时候我都快疯了!于是将项目里的SQL语句拷贝出来一句放到新写的JDBC程序里去执行,终于出了同样的错。问题也一点点的浮出了水面!因为一直在项目里写SQL都是习惯了用大写,但是临时写的时候比较仓促一般都用小写,所以临时写的程序就可以执行,但是项目里的SQL却无法执行,因为刚开始一直想不到mysql会区分大小写,因为在自己机器上是没有问题的。后来查了资料发现,是因为操作系统的原因,mysql在LINUX下默认是区分大小写的。下面我们就更改mysql配置让其不区分大小写:

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

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

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

  3.重新启动数据库即可。

 

 

就这个小问题整整折腾了我3个多小时!NND,郁闷啊!问题总结在这里希望大家以后别走我这么多弯路!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值