1、高等教育自学考试本科毕业论文(计算机应用专业)中学教务管理软件高等教育自学考试计算机应用专业本科生毕业论文第 I 页毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对 本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日 期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕
2、业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 高等教育自学考试计算机应用专业本科生毕业论文第 II 页学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识
3、到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名: 日期: 年 月 日导师签名: 日期: 年 月 日高等教育自学考试计算机应用专业本科生毕业论文第 III 页摘 要本论文主要介绍了开发的系统所要完成的功能和开发的过程。重点说明了数据库的设计思想、程序的设计思想,以及设计
4、中的重点、难点技术和解决方案。开发本系统时使用 Microsoft Visual C+ 6.0作为开发平台,Microsoft Access2000作为数据库管理系统,使用 Microsoft Data Access Objects 3.60(DAO)访问数据库。系统主要完成学生信息,老师信息,考试信息的添加、删除、查询、浏览,考试成绩的分析(及格率,优秀率等的分析),以及用户管理等功能。其中查询功能可以分为模糊查询、精确查询等功能.用户管理功能分为添加,删除用户以及用户权限的授予和撤消。其中权限设计使用了较为灵活的方法为每一个菜单设置了使用权限,保存权限时只使用了一个长整数(32 位)可保存
5、多达 32种权限,并且易于管理和判断。由于 DAO不能将数据库中的表或是查询直接显出来,所以设计系统时扩展了 Windows的两种基本控件-列表控件(CListCtrl)和组合框控件(CComboBox),使它与 DAO记录集对象结合在一起完成数据的显示。由于列表控件是本系统的主要数据容器,所以给它加入了排序功能,用户只要点击列表表头就能对列表中任意一列进行升序降序排列,并且编程时只使用了两个函数。同时,对记录集也作了扩展,将数据库参照完整性维护的细节交给了记录集。通过对控件和记录集进行扩展后,只要用一两个方法就能构造出一个友好、实用的界面,并且数据库的操作也大大简化了。本系统的特点是界面友好
6、,操作方便,权限管理灵活。设计时充分利用 C+语言的继承、重载、默认参数,宏和静态成员变量等的特性,灵活地实现了系统的各种要求。关键词:数据库,控件,记录集,教务管理,MFC ,VC+。高等教育自学考试计算机应用专业本科生毕业论文第 IV 页序 言本论文讲述了开发本系统的过程,通过联系具体的程序侧重介绍了系统的设计思想、数据库的设计思想、具体编程的细节,以及设计中的重点、难点技术和解决方案。论文中列举了大量程序,并对主要程序段的参数、各个变量和算法方法都作了详细解释。论文分为五章:第一章绪论 ,主要讲述了开发系统的背景、目前应用现状、系统需求。第二章系统开发工具 ,主要介绍了系统所使用的数据库
7、、开发工具、开发工具对所选数据库的支持。第三章数据库的设计 ,主要介绍了数据库设计的全过程,建立了数据字典、各局部ER 模式、全局 ER 模式、数据库关系模式、最后导出了数据库的物理结构。第四章软件系统的具体设计 ,主要介绍了扩展控件和记录集的思想和具体做法、主要模块的设计、具体的编程过程、画出了软件结构图,以及设计中遇到的中的重点、难点SQL 和解决方案。第五章结束语 。开发系统的软件环境:本系统使用的开发工具是 VC+6.0。数据库使用的是 Microsoft Access20000。操作系统是 Windows Me。开发系统的硬件环境:处理器:PentiumII 内存:128M本系统所附
8、的软盘中有系统的可执行程序和所有源程序。软盘内容如下:a:Data 数据库所在目录。a:jwgl.exe 系统可执行程序。可以拷贝到任何目录中运行,但 Data 目录也要一起拷贝。a:源程序 系统源程序,源程序可在任何目录中编译。高等教育自学考试计算机应用专业本科生毕业论文第 V 页目 录摘 要 .I序 言 .II目 录 .III第一章 绪 论 .11.1 系统开发背景 .11.2 系统需求 .11.3 系统设计思想 .1第二章 系统开发工具 .32.1 Access 简述 .32.2 VC+6.0 简介 .32.3 MFC DAO(数据访问对象 )编程简介 .3第三章 数据库的设计 .53.
9、1 数据字典 .53.2 各局部 ER 模式的设计 .53.3 全局 ER 模式 .63.4 数据库关系模式 .93.5 数据库的物理设计 .9第四章 软件系统的具体设计 .124.1 软件结构图 .124.2 数据库访问的组织 .134.2.1 三个全局 DAO 对象 .134.2.2 扩展的记录集类 .134.3 用户界面的设计 .154.4 对列表控件和组合框控件的扩展 .164.4.1 对列表控件的扩展 .164.4.2 对组合框的扩展 .214.4.3 一组用于简化参数的宏的设计 .23高等教育自学考试计算机应用专业本科生毕业论文第 VI 页4.5 用户权限管理的设计 .244.6
10、增加、删除、修改方面的设计 .254.7 查询模块的设计 .344.7.1 多表查询的实例 .364.7.2 难点 SQL 及解决方案 .384.7.3 判断表是否存在的解决方法 .39第五章 结束语 .41致 谢 .42参考书目 .43附录 A 列表控件事件处理函数 .44附录 B 系统全局函数、变量和宏的定义 .45Public.h 文件 .45Public.cpp 文件 .46高等教育自学考试计算机应用专业本科生毕业论文第 1 页第一章 绪 论1.1 系统开发背景在中学里,学校教务资料繁多,包含很多数据的管理,随着计算机成本的不断下降,现今,有很多的中学都已经配置了计算机机房用于教学,但
11、却未使用计算机进行数据库管理。根据调查得知,他们的管理主要方式是手工处理,对于学生成绩的统计和核实等往往采用计算器等工具进行,对学生考试资料,以及成绩管理也是手工进行,需要抄写大量文字。很显然,用手工管理大量信息容易出错、丢失、且不易查找。尽管有的学校有计算机,但是尚未用于教务管理之中,没有发挥它的效力,资源闲置比较突出,这就是开发本系统的基本前提。基于这些问题,我认为有必要建立一个中学教务管理软件,使学校闲置的计算所被利用起来,同时也可以提高信息处理的速度和准确性,并能够及时、准确、有效的查询和修改教务档案。1.2 系统需求中学教务管理现状已在“系统开发背景”一节已有介绍不再赘述。这里主要介
12、绍中学教务管理的内容。通过深入学校与教务管理员个别交谈、查看业务记录,得出中学教务管理的内容主要包括已下几个方面:学生管理,老师管理,考试管理,课程管理,班级管理,学校基础设施的维护与管理,其中学生管理包括:学籍管理、学生考勤、卫生检查,学生信息的查询;老师管理包括:老师资料管理,老师资料的查询;考试管理包括:考试设置与安排,成绩的分析与统计(优秀率,及格率,平均分,最高分的分析与统计) 、成绩的查询;课程管理包括:课程设置,课程表按排;班级管理包括:班级设置,为新生分班;学校基础设施的维护与管理包括对学校设施使用情况进行统计与分析。其中查询功能要求有模糊查询和精确查询。另外,在使用计算管理时
13、还需要设置权限。1.3 系统设计思想通过需求分析可以看出中学教务管理的内容相当的多,要开发出全部功能并不是一个版本能解决了的问题,所以准备分阶段开发,从低版本开始向上升级,开发出第一版后投入使用,在软件的整个生存周期中对其进行升级。本系统当前版本是 1.0,命名为教务管理系统1.0。当前版本主要完成学生信息,老师信息,考试信息的添加、删除、查询、浏览,考试成绩的分析(及格率,优秀率等的分析),以及用户管理等功能。其中查询功能可以分为模糊查询、精确查询等功能.用户管理功能分为添加,删除用户以及用户权限的授予和撤消。其中权限设计使用了较为灵活的方法为每一个菜单设置了使用权限,保存权限时只使用了一个
14、长整数(32 位 )可保存多达 32 种权限,并且易于管理和判断。充分利用 C+语言的继承、重载、默认参数,宏和静态成员变量等的特性,灵活地实现了系统的各种要求。设计本系统时使用 Microsoft Visual C+ 6.0 作为开发平台,Microsoft Access2000 作为数高等教育自学考试计算机应用专业本科生毕业论文第 2 页据库管理系统,使用 Microsoft Data Access Objects 3.60(DAO)访问数据库。设计的步骤是先按照中学教务管理的需求对数据库进行设计,包括:制作数据字典、画出 ER 模型、关系模式、最终得到可在 ACCESS 上运行的物理数据
15、库;设计完数据库之后再对数据库进行编程、按照界面要求设计应用程序。高等教育自学考试计算机应用专业本科生毕业论文第 3 页第二章 系统开发工具2.1 Access 简述Access是一个数据库管理系统。它被集成到 Office中,它与其他的数据库系统相比更加简单易学,一个普通的计算机用户可以很快地掌握它。Access 2000的功能也十分强大,利用它可以方便地实现对信息保存、维护、查询、统计、打印、交流、发布。这些功能对一个普通用户来说已经足够了。作为一个办公人员,如果手头有大量的信息要处理,Access 2000将是最好的选择之一。ACCESS2000对建立数据库表、建立查询、建立表间关系等方
16、面提供了强有力的工具,建立及维护相当方便。在数据库完整性方面 ACCESS2000还提拱了:级联更新、级联删除、主键约束、有效性文本、默认值等功能,大大简化了编程。2.2 VC+6.0 简介早期 Windows编程只能用 C语言,需要一段一段地重复调用复杂的 Windows API,写冗长的消息处理 Switch语句,现在大部分开发人员都使用 C+进行 Windows编程。很多工具开发商也将 Windows API封装到一个个 C+类库之中,并称之为“应用程序框架” (Application Framework) 。开发人员可以利用它更高效地进行编程。 Visual C+的“应用程序框架”类库
17、是 MFC(Microsoft Foundation Class), MFC功能十分强大,提供了 AppWizard(应用程序向导) ,ClassWizard(建类向导)等工具开发专业 Windows程序。同时还提供了大量Windows基本控件的 C+类,并允许对它们进行扩展,其中一些最常用的类是:CStatic(静态文本) 、CButton(按钮) 、CEdit(编辑控件) 、CListCtrl(列表控件) 、CComboBox(组合框) 。在数据库方面,从功能简单的数据库(如 Jet Engine)到复杂的大型数据库系统(如oracle),VC+6.0 都提供了一些编程接口,主要有以下五种:1. ODBC API;2. MFC ODBC类;3. MFC DAO类;(数据访问对象)4. MFC的 OLE/DB;5. ActiveX数据对象(ADO)。开发本系统时使用 MFC DAO类;(数据访问对象),所以下面重点介绍它的编程方法。2.3 MFC DAO(数据访问对象 )编程简介DAO用于和微软的 Access数据库接口。在数据库应用程序如果只需与 Access数据库接口时,使用 DAO编程较方便。其主要类如下。CDaoWorkspace:CDaoWorkspace 对象可以让一个用户管理从登陆到离开期间,指定的密