CentOS下无法正常获取数据库表数据的问题


近日,由于客户要求在CentOS下安装应用,因此有机会接触了一下CentOS,顺便也了解了下CentOS的常规操作,还有MySQL。

目前整个技术框架使用JSF(richfaces、facelets)+Spring+JPA(OpenJPA),不使用数据库依赖的触发器或存储过程,所有业务逻辑在web服务器上执行,因此数据库基本不用考虑移植问题。但是本来在Windows下运行正常的系统,在linux下却没法获取一些表的内容。由于数据库的初始化,最初只是体现在几个需要手工维护的表数据上,最终却发现原来是因为大小写的问题!

具体操作过程:

1、在Windows下,使用MySQL的客户端工具“Navicat”,将当前的数据库导出到bsmf.sql文件中。说明:导出的.sql文件中,所有的表名都是小写。

2、将导出的.sql文件拷贝至linux下,导入需要使用的数据库中

3、启动web服务器,访问服务。问题出现:许多表无法访问。

4、在mysql中使用“show tables;”命令,发现表名有重复,重复的表名区别在于大小写,大写的表名与对应的实体bean名相同。找到问题:表名大小写造成的数据无法访问。

相关内容