“Java与Access”搭建的半自动化统计平台问题总结

    根据领导要求,需要对单位科研成果进行统计。可能是之前用excel做了一个小小的评估系统,老板和同事对于评估结果没有产生太大的意见(可能以为我一字一句进行了非常细致的工作),于是又给了我这么一个说大不大,说小不小任务。哎~~ 又要白干活了,烦~~ 为了挽回我很久没用的专业知识和减轻以后的工作负担,于是我选择了最简单的“JAVA+ACCESS”组建的单机评估系统。目的:通过人工的EXCEL导入ACCESS数据源,经过JAVA对access导入表的进行格式化、存储数据、评估数据等,获得最终的评估结果。编程时间和能力有限,因此将整个过程中出现的问题和解决方法记录下来跟大家分享一下。

1. 数据库的建立:

    因为数据源已经存在,然而数据源表中的数据格式化程度不高。主要问题如下:a.数据中存在“***,***,***”;b.名称简化没有规则如“社科”,“社科项目”,“国家社科”,“国家项目”等问题;c.某一行中一字段标注“北京项目****”,而另一字段“国家项目”,可能会对以后结果出现错估。于是首先想到的是对数据源中的数据进行一定的格式化,将需要在统计中进行评估的所有内容存入不同的数据库用以保存数据。因此在原有的lunwen、project、reward、book表的基础上,分别建立了相应的lunwenFormate、projectFormate、rewardFormate和bookFormate表。另外,又建立了staffs、score和totalScore表。

2. 数据库的连接:尽量制作自己独特的链接Class。

3. 关闭Statement 和Connection

    有点无语,使用close()方法,却无法关闭Statement与Connection,在debug中还能看到ST和CO,让我郁闷了三天,报错sql invalid handle,于是反复看sql语句,怎么都找不出问题所在。没办法,于是逐行寻找错误,可就是有这个错误,无法解决。后来干脆close的同时将其null掉。结果问题解决了~~  哎~~~ 三天 白琢磨了~~

4. ResultSet

    ResultSet在遍历中只能取出一次,ReslutSet.next()只能遍历一次(很重要)。当遍历结束ResultSet将自动关闭。


5. 如果在数据库中没有对数据进行初始化,那么在java程序中需要判断相应位置是否为null,因为没有在数据库赋值,数据库给出了null值!!  scoreDictionary.getName()!=null。


扫描二维码关注公众号,回复: 442723 查看本文章

6. if判断。在多个if判断中 一定要注意随后写上else。否则太多if判断会出错~~




猜你喜欢

转载自blog.csdn.net/sirwill/article/details/16354795