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

来源:岁月联盟 编辑:exp 时间:2011-11-03

 

近日,由于客户要求在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名相同。找到问题:表名大小写造成的数据无法访问。

摘自 宁静深远的专栏