388.基于ACCESS的学生信息管理系统【源代码联系本人】.doc
-
资源ID:2387998
资源大小:152KB
全文页数:9页
- 资源格式: DOC
下载积分:8金币
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
388.基于ACCESS的学生信息管理系统【源代码联系本人】.doc
经济学院课程设计报告基于ACCESS的学生信息管理系统课程名称: 数据库原理 专 业: 软件工程 姓 名: 班 级: 计算机( )班 学 号: 指导教师: 2009年 7 月10日 基于ACCESS的学生信息管理系统一、需求分析 1、设计目的 首先要在登陆系统时有身份验证功能,其次能对有关学生的各类信息的数据进行添加、修改和删除,能对学生成绩的数据进行添加,修改,删除,能对学生信息进行按学号,姓名进行查询,能对学生成绩按照课程号和姓名进行查询;系统管理员除可实现普通用户的操作外还可以添加,修改,删除用户信息,并能对密码进行修改。2、主要功能A、对登陆用户身份验证,即需要正确的用户名和密码才能访问该数据库系统B、不同的用户要有不同的权限C、根据用户的需求添加,修改,删除学生信息D、根据用户的需求添加,修改,删除学生成绩E、系统管理员能添加,修改,删除用户并可以修改密码F、对学生的信息可以按照学生姓名或学号进行查询G、对学生成绩可以按照学生姓名或课程名查询H、对学生可以按照学号查其所在宿舍3、功能模块划分学生信息管理系统 信息查询基本信息管理模块系统管理模块 学生管理成绩管理 宿舍管理宿舍查询成绩查询基本信息查询修改密码用户管理4、数据和处理过程的关系(数据流图)用户用户名密码 1用户登录处理输入 D1用户表2.1接收输入输入 2.2处理输入D2数据库D3数据库处理信息 2.3输出处理信息处理结果终端 图1 整个程序的整体处理流程5、具体功能需求分析如下: A、身份验证 用户在登录界面输入用户名和密码,应用程序查询数据库中的信息对用户名和密码进行验证,如果找到匹配项,用户进入系统;否则用户不能进入系统。 B、系统管理 1)用户管理:这一模块只有管理员才能进行操作,管理员可以浏览,添加,修改,删除用户信息。2)修改密码:任何用户都可以修改自己的密码,管理员可以修改所有用户的密码,任何用户要修改密码的前提是必须知道现有密码。C、基本信息管理: 1)学生管理:能够对学生的基本信息进行添加,修改,删除操作。学生的基本信息包括学号,姓名,性别,年龄,电话,地址,系别,年级,班级。 2)成绩管理:能够对成绩的情况进行管理,能够对成绩进行浏览,添加,修改,删除。成绩的基本信息包括学号,课程号,分数。D、信息查询: 1)基本信息查询:能对学生的基本信息按照姓名和学号进行查询。 2)成绩查询:能对学生的基本信息按照姓名和课程名查询。 3)宿舍查询:能对学生按照学号查询其所在宿舍二、概念结构设计课程学生课程编号课程名称学时学分成绩学生编号姓名性别年龄地址电话系别年级班级分数mn用户用户编号用户名用户密码用户权限住宿宿舍所处位置楼号宿舍号n1 图2 E-R图的最终效果三、逻辑结构设计将E-R图转换为关系模型,关系的码用下横线标出:学生(学号,姓名,性别,年龄,地址,电话,系别,年级,班级)课程(课程号,课程名称,学时,学分)成绩(成绩记录号,学号,课程号,成绩)用户(用户编号,用户名,用户密码,用户优先级)宿舍(宿舍号,学号,所处位置,楼号)1、学生表(student)序号字段名称字段描述类型位数属性1Student_id学生记录号自动编号主码2Sno学号文本6非空3Sname姓名文本6非空4Ssex性别文本10非空5Sage年龄整型2非空6Saddress地址文本100非空7Sphone电话文本20非空8Sdept系别文本20非空9Sgrade年级文本20非空10Sclass班级文本20非空2、课程表(course)序号字段名称字段描述类型位数属性1Course_id课程记录号自动编号主码2Cno课程号文本6非空3Cname课程名文本20非空4Chour学时整型2非空5Ccredit学分整型2非空3、成绩表(SC)序号字段名称字段描述类型位数属性1Score_id成绩记录号自动编号主码2Sno学号文本6外码,非空3Cno课程号文本6外码,非空4score分数整型3非空4、用户表(users)序号字段名称字段描述类型位数属性1userno用户编号自动编号主码2username用户名文本50非空3password密码文本6非空4userlevel用户权限文本1非空5、宿舍表(Domitory)序号字段名称字段描述类型位数属性1D_id记录号自动编号主码2Dno宿舍号文本10非空3Sno学号文本6外码,非空4S_place位置文本50非空5Fno楼号文本20非空 6、类间调用关系: 图3 类间调用关系图四、数据库物理设计1、存取方法的选择 A、因为该系统的功能中包括按照学号和姓名查询学生的基本信息,因此在这两个属性上建立索引;因为该系统的功能中包括按照姓名和课程名查询成绩,因此在课程名上建立索引。 B、在每个表中的主属性上建立索引,这一部分是系统自动完成的。2、数据库的存储结构 因为该系统的规模和数据量比较小,因此所有数据集中存放五、数据库的实施1、每个功能的具体实现及处理方法: A、身份验证 设计用户登录界面,在实现的过程中首先将鼠标定位到用户名编辑框中,输入用户名和密码,应用程序将其与数据库中的记录对照,如果找到匹配元组,则登陆到学生信息管理系统;如果找不到匹配元组则弹出对话框“您输入的用户名或密码错误,请重新输入!”,点击确定按钮后,用户名和密码编辑框被清空,并把光标定位到用户名编辑框,等待输入。 B、系统管理 在这个功能模块中包括用户管理,修改密码和退出三个选项。在用户管理的实现中,设计用户管理界面,然后设计方法响应各个菜单项,如果用户点击添加,修改按钮则将相应的数据项显示到对应编辑框,且各个数据项处于可编辑状态,修改或添加后点击确定,将结果保存到数据库,且更新显示列表;如果是删除,则弹出对话框询问是否删除,点击确定则删除。在修改密码的功能中,点击修改密码菜单项,弹出对话框,要求输入用户名,密码,新密码,确认密码项,输入后,程序首先检索数据库找到与用户名和密码匹配的项,如果找到,提示密码修改成功,否则输出“用户名或密码不正确,请重新输入!” C、信息查询 在这个功能模块中包括学生基本信息查询,学生成绩查询和宿舍查询三个功能, 对这三个功能设计三个对应界面,学生可以按照学号或姓名进行基本信息查询,如果点击查询按钮,且没选择查询条件,则弹出对话框“请选择查询条件”,否则应用程序获得所输入的变量,并查询数据库找到匹配项,显示查询结果在列表中,否则提示“没有找到匹配项,该记录不存在,请检查输入!”。成绩查询和宿舍查询其实现与基本信息查询大同小异,不再赘述。2、数据的载入:由于本系统是一个小型,简单的系统,因此数据的载入工作通过手工完成即可。但如果是大型的系统,应该设计一个数据录入子系统,由计算机来完成数据入库的任务。此外,在数据录入的过程中应该遵守完整性约束条件。3、调试中出现的问题及解决方法: A、出现的问题(实质性问题,编号对应): 1)建立登陆界面后,输入用户名和密码提示找不到数据库 2)在用户管理窗口中,应用控件ListCtrl却无法显示标题和元组 3)在用户管理窗口中,点击控件ListCtrl中的元组无法将其对应项显示到Edit Box项中,而在对应的方法中找不到错误 4)应用ComboBox控件时,虽然设置了下拉项但只能显示默认状态下的一项 5)编译时提醒:找不到记录集类CRecordSet,即使加入头文件问题依旧存在 B、解决方法: 1)在建立工程的时候没有选择数据源StudentInfo,因此无法连接到数据库 2)ListCtrl控件默认类型是list,在本系统中如果要显示元组要将类型改为report 3)单击元组时的响应方法是对ListCtrl控件的响应,因此其方法的添加要在控件双击产生相应方法,而不能在其所在类上通过单击右键产生。 4)ComboBox控件在应用时要设置足够的下拉空间,否则没有空间显示下拉项。 5)在建立的工程中有一个类CStudentInfoSet是从CRecordSet类继承来的,要用它代替记录集CRecordSet类六、系统运行结果 图1 学生信息管理系统登录界面图2 密码修改界面 图3 用户管理界面 图4 学生信息管理模块界面七、实习总结 本次实习,受益颇多:首先,学会了ACCESS数据库利用数据源ODBC与应用程序的连接及对数据库操作函数和语句的应用。在信息社会里各类信息的保存时至关重要的,而信息保存最好的工具之一就是数据库,从现实社会中我们可以知道数据库几乎是无处不在的,因此学会对数据库的操作相当重要的,这也是本次实习的目的和最大收获。其次,学会了某些控件的应用,如ListCtrl,ComboBox等。最后,在程序的编写过程中,用到了大量的API函数,这是在MFC方面学习的深入。通过实习,认识到自己的不足主要是在大量的API函数的应用上。在以后的学习中还应该学会其他数据库的连接和应用。