数据库课程设计(14)
时间:2025-04-29
时间:2025-04-29
结论
在本次课程设计过程中,学到了很多知识,由于课程设计起草的比较晚,所以功能比较差些,功能也未能进行更深入的思考,自己也对VC涉足不深,所以在运用方面有所欠缺,数据库方面,整体考虑也不周到。在课设的前一周有对课设考虑了一下,本来有考虑了好几个模块,像成绩录入模块、班级统计模块、年级统计模块。在成绩录入模块中再分别进行录入、修改、增加、删除、查询、打印等功能。班级统计模块又分别有学生总成绩、平均成绩、班级排名、统计班级某分数段内的学生成绩人数、各学生该科成绩、班级排名等功能(只相对于某个学期)。还有年级统计模块,分为各年级各专业学生总成绩还有排名、各学生各科成绩年级排名,各班各分数段人数等功能。不过在考完试之后再开始真正做课程设计,时间有些伧促,所以只是实现其中的一部分功能。在用VC与SERVER 2000进行学生成绩管理系统的设计时,开始对用ODBC连接数据库时,经过了一天的时间,本打算用ADO进行连接,不过对我来说有点眼高手低,对ADO与ODBC都是一点都不懂,最后还是决定用ODBC进行连接,相对比较容易上手。通过本次课程设计,对在VC++中如何编写基本的ODBC数据库等有了初步的认识,还有也提高了Windows编程技术,进一步提高了Visual C++的操作能力,虽然在之前看过孙鑫的一些视频,由于很少进行操作,忘了差不多了,只记得些基本的操作。就比如在求平均分时,就花了我一个下午的时间进行实现这个功能,主要是对属性表单的创建不知道,所以要查找资料,翻出孙鑫的视频,进行摸索,在程序中把属性表单的类建成基于对话框的类,在改过来的过程中经历了不少挫折,最后通过对比基于对话框的类和基于属性页的类,把程序给改了过来,总算是完成了这项功能,进一步回顾了这部分的知识.而对于SQL语句如何在MFC中实现,则完全不懂,所以刚开始建的那些查找之类的功能,都是用CRecordset提供的几个成员函数进行滚动查找,操作有些繁琐,代码有些冗余.在快把课程设计给初步做完时,才弄懂如何把SQL语句在MFC中运行,虽然知道的有些晚,但还是学会了如何运用,所以把之前的有些代码,弄成运用存储过程或查询、更新的那几个SQL语句进行执行.进行测试后,可以运行.在弄登陆框时,也出现了一些麻烦,比如点右上角的那个X,程序会进入主页面,通过这条路径不用输入密码,这是一大漏洞,本来以为点X时,会跟点退出是响应同一个函数的,百思不得其解,最终通过一个网友的解答,说是用DOModal()时应该加一句判断,这样就可以解决那个问题了.
现在讲讲数据库设计方向的一些感言,经过几天的不眠不休的备斗,不过数据库还是设计的不好.像数据库的对象命名,我就没按标准来对对象进行命名,用了汉字,这样在程序中建立数据集时,就出现了一大堆m_column的字样,这些表示属性,给写程序带来了不便,不过相信以后我不会再犯这个错误了.建表时,那些主外键也未考虑周到,导致在添加数据过程中老是出现些问题,像触发器的建立,由于主外键没设计好,导致内部错误,这样花费了我很多时间查找错误原,都是由于前期工作没做好,正所谓”磨刀不误砍柴工”,这下我完全体会到了这句话的深义.在做好数据库设计之前,首先得对数据库中各种概念有所理解,然后在实施过程中,对数据库管理软件创建的各个部分有个整体的认识.
通过本次课程设计,学到了很多知识,不仅是数据库方面的,还有对软件设计过程中应该注意哪些问题也有了初步的认识,相信在以后的设计过程中,我会做得更好.
下一篇:客户经理工作日志