数据库与程序设计课程设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
山东理工大学课程设计报告
——数据库与程序设计课程设计
院系:计算机科学与技术学院
专业:软件技术
班级:软件0802
姓名:马健学号0832101099
指导教师:姜桂红
2009年12 月28 日~ 2010年01 月07 日
数据库与程序设计课程设计
学生成绩管理系统
一.系统概述
1.系统设计思想
(1).采用现有的资源,先进的管理系统开发方案,充分利用学校现有的资源,减少开发中的时间和
财力、物力、提高系统开发的水平和应用效果。
(2).系统就满足学校的需求,例如学生信息的录入、查询、更新等。学生录入与排名。
(3).系统就具备数据库维护功能,及时根据用户需求进行数据添加、删除、修改等操作。
2.系统功能概述
该系统共分四个模块,功能分为用户登录,学生信息查询,学生信息管理,课程信息查询,课程信息管理,成绩查询,成绩管理。
3.系统功能模块设计
二.数据库设计
根据学成绩管理系统的功能要求和数据流程分析,该系统数据库命名为Myschool1,数据库中包括:
①用户信息表(User);②学生基本信息表(StudentMsg);③学生课程信息表(Coursemsg);④学生成绩
信息(ScoreMsg).
1.下面列出了各表的数据结构
2.数据库连接
三.主要界面与模块设计
1.登录界面如下图所示:
登陆主要用于对登陆学生成绩管理系统的用户进行安全性检查,防止非法用户登录系统。在用户登录系统时验证用户名及其密码,判断输入的用户名和密码与数据库中的是否一致,如果一致则允许登录,否则不允许登录。输入用户名和密码后,单击【确定】按钮。这时需要验证输入的用户名和密码与数据库中的是否一致。
2.主界面设计
主界面的作用就是显示本系统所有的功能菜单项,并把用户经常用到的功能设计成菜单条,以方便用户操作,然后当用户单击相应的菜单项或菜单条时,就会打开对应的模块窗口,并且在状态栏中显示当前界面的一些信息。
主界面设计如图所示
3.学生管理模块设计
学生管理模块分为添加学生信息和学生信息管理,可以实现对学生信息的添加,删除,更新以及维护。
学生管理模块设计页面如下图所示:
(1).添加学生信息:
(2).学生信息管理:
4.课程信息模块设计
课程信息模块主要能实现对学生课程信息的管理,能方便用户对数据库学生课程信息的查询,删除,更新及维护。
下面主要是课程信息的两个主要模块页面设计。
用户可以方便的通过界面与数据库进行交互。对于用户可以方便的对数据库进行相应操作。
(1).添加课程信息:
(2).课程信息管理
5.成绩管理模块设计
成绩管理模块主要功能实现对学生成绩信息的与数据库连接实现对数据库的更新,查询等操作。
成绩管理信息模块设计如图所示
6帮助模块设计
告诉我们本系统的版本信息和版权所有等等
帮助模块信息如下图所示:
7.程序调试注意事项:
1.在不同机子使用相同数据库项目时注意更改位置:
如下图所示:
将“值”DataSourse=majian;InitialCatalog=MySchool;IntegratedSecurity=ture中
的DataSourse值改成本机计算机名或者改成”.”(英文状态半角的点)即可,无需再重新绑定“学生信息管理”和“课程信息管理”数据。
2.注意一些书写格式和前后应用的名字书写要相同等等。
3.自己对某些程序可以尝试不同的方法进行调整做到最优化系统。
四.实训总结
分析模块中的代码,最多最核心的就是连接数据库,用到几个自定义函数,其中要先通过ID、和Password 连接数据库的数据源,前提是把数据库给配置好,要运行这个学生信息管理系统是需要数据库服务器的支持的,我在这个系统的实例操练中知道了并且学会了如何配置数据库,如何搭建环境,,测试数据联接。
从模块入手,连接好数据库,其他的数据库查询问题就好说了,这几天和同学们互相解决问题,互相调试系统的过程中,数据库的连接成功与否是问题关键。
首先看,总共有六个大菜单项,下面各有小项,其实也简单,熟练一个,剩下的就是贯通了。系统菜单项下面是退出系统。其中登录用户,就是把当前输入的用户名和原数据库中user的记录数据比较,符合条件则允许登录。
以下大的菜单项依次是,学生信息管理、学生成绩管理、课程管理和帮助。
我们先看这些菜单项的名称来想一想这些实现的具体功能有哪些呢?学生信息管理,这个里边就应该有一个添加学生信息的功能实现,添加的学生信息需要修改,那就需要人性化的设置,这样就有了相应的更改学生信息的功能,结合实际使用流程,同样这些添加功能主要的核心就是sql语句,一条条简单的sql 语句都是极容易出错的地方,一个空格摆放不对,一个字母缺失、敲错,这些都会导致数据库的连接问题,主要体现在返回的记录集上面。
把整体系统做完,剩下的事就是整体的调试,出现了很多错误,要分析错误的类型,细心修改,保证程序能正确运行。
经过这次锻炼,不仅我自己在调试错误方面有了很大提高,其他同学们也进步很大。在这个系统调试阶段,仔细使用设置断点、用F8、自己定点插入msgbox,等等。
说过调试,也说了这主要的添加、修改、查询三大功能实现的方法,剩下的就是我在调试阶段自己对原系统的一些更改。
1、针对这几个窗体基本上都有对数据库内数据信息查询访问,给用户返回结果集。可是如果数据库中没有任何数据这时就会出错,如是,我在每个窗体对返回的记录集操作之前先判断一下,减少了因程序运行错误而使程序突然结束的几率。
2、在实现‘更新数据’功能的时候,要先将当前记录集中数据删掉,然后再重新连接数据库,重新添加,添加进去就行了,这其中还要对记录进行操作,要注意修改时的连带关系,注意修改主键。
3、还有一个就是课程信息设置菜单中的‘设置课程信息’功能,这里边,通过处理,使得当单击选择了课程后,再点击“设置课程”按钮,会在“所有课程”一栏里会出现、相关信息,而通过后来的“确认设置”按钮,代码中会先对数据库中的信息搜索,返回一个记录集,删掉这个记录集,再把新添加到课程。如此完成了课程的设置。
总的说这个系统,只是做程序的开始,只能大概对程序流程做个初步了解,只是一个开端,可是对于如何写好一个数据库的骨架还是有好多需要解决的问题的,学东西都要广泛涉猎,可以不精,但决不能不知。不能拘谨于一个小小的专业圈,这样不利于专业的发展。
在熟练掌握本专业知识的同时,不断拓展知识面,发掘潜力,取得更大进步。
五.老师评语: