实例介绍
该资源详细的讲解了怎样开发考试管理系统的步骤以及有大部分的代码资源。有利于学习开发、对照有关的系统开发。
目录 摘要… ABSTRACT II 目录 II 第I章引言 1开发背景 …误!未定义书签。1 12选题意义 误!未定义书签。1 13研究内容 第2章系统的相关技术介绍… 21MFC简介 22 SQL SERVER2000简介 4 23ODBC简介 24 CRECORDSET类和 CRECORDVIEW类简介 +“+++ +++++4+++ 25 POWERDESIGNER1简介 24本章小结 第3章系统的分析与设计. ··中·“·::···········:··················“···:··*······ 3.1需求分析 32系统设计 321概要设计… 非着丰非非目非非自 8 3.2.2系统总体流程图… 323系统模块设计,… 324菜单设计. 10 3.3本章小结…11 第4章数据库设计 4I数据库的需求分析 12 4.2数据库表设计 4.3数据库建表语句 13 44本章小结… 19 第5章系统实现 20 5.1登录模块实现 *····-··········*·=····· 20 5.2基本信息模块实现 1面 错误!未定义书签。20 52.1管理员信息 …误!未定义书签。20 522系部信息 错误!未定义书签。24 523班级信 25 524学生信 错误!未定义书签。26 525教师信息 →·+“·* 错误!未定义书签。27 5.2.6章节信息 28 5.3题库管理模块实现. 29 5.3.1判断题信息 29 532填空题信息 *→··*→···········“·· ··“=:··*····*······*·················“· 533单选题信息… 错误!未定义书签。30 534多选题信息 错误!未定义书签。30 54试卷管理模块实现,… +++++++++++++++++++ …误!未定义书签。31 541定制试卷 中··中中·和中·,···非中 …{误!未定义书签。31 542试卷管理 错误!未定义书签。34 55备份惨改模块实现. 37 5.3.修改密码. 5.32备份数据库 139 56本章小结 日着南·前非非非非非 第6章结束语.141 致谢 42 参考文献 43 第1章引 1.1开发背景 在各学校开始逐步引入计算机的今天,试卷作为考察教学成果的重要手段之 直没有得到较好的改善,试卷的编辑、整珥工作占了很大的工作量叫传统 的手工出卷过程,存在不少弊端: ◆出现不必要的重复劳动,造成人力资源及时间上的浪费: ◆缺乏科学的衡量、评价及统一试卷难易度、试卷质量的有效手段; ◆存在自教自考,考前漏题的情况 ◆试卷容易出现错漏缺现象,引起不必要的麻烦 在以往的教学中,老师出试卷大多由手工出卷,这样生成的试卷往往会有知 识点分布太集中、难易程度不当、分值分布不均等一些缺点;这样,既增加了老 师的负担,也没有达到很好考查学生学习的真实水平,造成教学上的失误。基于 以上的原因,有很多从事软件开发的人员,在试卷自动生成方面做了很大的研究。 本系统希望利用计算杋强大的数据处理功能,由计算机逐步代替传统的人工出卷, 并且规范岀卷程序,使出卷工作更加和学化、现代化,使教育工作更上一层楼。 1.2选题意义 w. docIn co 考试管理系统,此课题目的是在我们以往学习数据库的基础上,灵活运用数 据库开发软件C艹+和结构化查询语言SQL2000,开发出能供教学使用的一套出试 卷系统,以方便教学。应用所学的有关数据库的知识,更深入地学习VC+和 SQL200,将所学的书面知道和实际应用结合起来,以达到学以致用的日的。在各 学校开始逐步引入计算机的今天,试卷作为考察教学成果的重要手段之·,通用 试卷自动生成系统升化了传统的手工出卷,解决了很多问题,例如:遥免了不必 要的重复劳动:节约了人力资源及时间;使用科学的衡量、评价及统一试卷难易度、 试卷质量的有效手段;大幅度降低了试卷出现错漏缺的机率;减少不必要的麻烦。 1.3开发内容 班级考试管理系统主要涉及的信息数据包括系统管理员信息,系部信息,班 级信息,学生信息,教师信息,试卷信息和各种题库等数据,涉及的操作主要包 括各种信息数据的管理,为考试定制的试卷,试卷管理等管理操作,教师密码修 改,备份数据库等。 经考查与分析,典型的考试管理系统主要应具有以下功能: ◆基本信息管理:包括对系统管理员信息,系部信息,班级信息,学生信息, 救师信息,章节信息的录入,修改和删除等功能。 ◆试卷管理:包括对已创建的试卷数据的删狳,定制考试试卷,选择考试试 卷等功能 ◆题库管理:包扦对判断题,填空题,单项选择题,多项选择题等题库的管 理功能。 QOc(m豆丁 www.docin.com 第2章系统的相关技术介绍 21MFC介绍 MFC( Microsoft Foundation Class Library)屮的各种类结合起来构成了一个应 用程序框架,它的日的就是让程序员在此基础上来建立 Windows下的应用程序, 这是一种相对SDK来说更为简单的方法。因为总体上,MFC框架定义了应用程序 的轮廓,并提供了用户接口的标准实现方法,程序员所要做的就是通过预定义的 接口把具体应用稈序特有的东西填入这个轮廓。 MicrosoftⅤ Visual c++提供了相应的 工具来完成这个工作: App wizard可以用来生成初步的框架文件(代码和资源等); 资源编辑器用于帮助直观地设计用户接口; Class wizard用来协助添加代码到框架 文件;最后,编译,则通过类库实现了应用程序特定的逻辑3。 MFC实现了对应用程序概念的封装,把类、类的继承、动态约束、类的关系 和相互作用等封装起来。这样封装的结果对科序员来说,是一套开发模板(或者 说模式)。针对不同的应用和目的,程序员采用不同的模板。例如,SD应用程序 的模板,MDI应用程序的模板,规则DIL应用程序的模板,扩展DLL应用程序 的模板, OLE ACTIVEX应用程序的模板,等等。这些模板都采用了以文档-视为 中心的思想,每一个模板都包含一组特定的类。典型的MD应用程序的构成将在 下节具体讨论。为了支持对应用程序概念的封装,MC内部必须作大量的作。 例如,为了实现消息映射机制,M℃编程框架必须要保证首先得到消息,然后按 既定的方法进行处理。又如,为了实现对DLL编程的支持和多线程编程的支持, MIFC内部使用了特别的处理方法,使用模块状态、线程状态等来管理一些重要信 息。虽然,这些内部处理对程序员来说是透明的,但是,懂得和理解MFC内部机 制有助于写出功能灵活而强大的程序。 MFC借助C艹的优势为 Windows开发开辟了一片新天地,同时也借助 Applica tion wizzard使开发者摆脱离」那些每次都必与基本代码,借助 Class Wizard和消 息映射使丌发者摆脱了定义消息处理时那种混乱和冗长的代码段。更令人兴合的 是利用C++的封装功能使开发者摆脱 Windows中各种句炳的困扰,只需要面对C+ 中的对象,这样一来使开发更接近开发语言而远离系统。 正因为MFC是建立在C++的基础上,所以我强调CC+语言基础对开发的重 要性。利用C++的封装性开发者可以更容易理解和操作各种窗口对象;利用C+ 的派生性开发者可以减少开发自定义窗口的时间和创造出可重用的代码:利用虚 拟性可以在必要时更好的控制窗口的活动。而且C++本身所具备的超越C语言的 特性都可以使开发者编写出更易用,更灵活的代码 在MFC中对消息的处理利用了消息映射的方法,该方法的基础是宏定义实现, 通过宏定义将消息分派到不同的成员函数进行处理。因此对于开发系统具有一定 的优势。 总之,MFC封装了Win32API, OLE APⅠ, ODBC API等底层函数的功能,并 提供更高一层的接口,简化了 Windows编程。同时,MC攴持对底层API的直接 调用。MFC提供了一个 Windows应用程序开发模式,对程序的控制主要是由MFC 框架完成的,而且MFC也完成了大部分的功能,预定义或实现了许多事件和消息 处理,等等。框架或者由其本身处理事件,不依赖程序员的代码;或者调用程序 员的代码来处理应用稈序特定的事件。MFC是C++类库,程序员就是通过使用、 继承和扩展适当的类来实现特定的目的。例如,继承时,应用程序特定的事件由 程序员的派生类来处理,不感兴趣的山基类处理。实现这种功能的基础是C++对 继承的支持对虚拟函数的支持,以及MFC实现的消息映射机制 22 SQL SERVER2000介绍 SQL( Structured Query Language,结构查询语言)是个功能强大的数据库语 言。SQL通常使用于数据库的遥讯。ANS(美目国家标准学会)声称,SQL是关 系数据库管理系统的标准话言。SQL语句通常用于完成一些数据库的操作任务, 比如在数据庠中更新数据,或者从数据库中检索薮据。使用SQL的常见关系数据 库管理系统有: Oracle、 Sybase、 Microsoft SQL Server、 Access, Ingres等等 吊然绝大多数的数据库系统使用SQL,但是它们同样有它们自立另外的专有扩展 功能用于它们的系统。但是,标准的SQL命令,比如" Select"、" Insert"、" Update" Delete"、" Create"和"Drop"常常被用于完成绝大多数数据库的操作 但是,不像其它的语言,如C、 Pascal等,SOL没有循环结构(比如 if-then-lse、 do- while以及函数定义等等的功能。而且SQL只有一个数据类型的固定设置, 换句话说,你不能在使用其它编程语言的时候创建你自己的数据类型。 SL功能强人,但是概括起来,它可以分成以下几组 ◆DML( Data Manipulation Language,数据操作语言):用于检索或者修改 数据 ◆DDL( Data Definition Language,数据定义语言):用于定义数据的结构, 比如创建、修改或者删除数据库对象; ◆DCI.( Data Control Language,数据控制语言):用于定义数据库用户的杈 限 DML组可以细分为以下的几个语句: ◆ SELECT:用于检索数据。 ◆ INSERT:用于增加数据到数据库。 ◆ UPDATE:用于从数据库中修改现存的数据。 ◆ DELETE:用于从数据库中删除数据 23ODBC介绍 ODBC( Open Database Connectivity,开放数据库互连)是微软公司开放服务结 构(WOSA, Windows Open Services Architecture)中有关数据库的一个组成部分,它 建立了一组规范,并提供了一组对薮据庳访问的标准API(应用程序编程接口)。 这些AP利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支 持,用户可以直接将SQL语句送给ODBC。一个基于ODBC的应用程序对数据库 的操作不依赖任何DBMS,不直接与DBMS打父道,所有的数据库操作由对应的 DBMS的ODBC驱动程序完成。也就是说,不论是 FoxPro、Aes, MYSQL还是 Oracle数据库,均可用 ODBC AP进行访问。由此可见,ODBC的最大优点是能 以统一的方式处理所有的数据库。一个完整的ODBC由下列几个部件组成:应用 程序( Application)ODBC管理器( Administrator),该程序位于 Windows95控制面 板( Control Panel)的32位ODBC内,其主要任务是管理安装的ODBC驱动程序和 管理数据源。驱动程序管理器 Driver Manager)。驱动程序管理器包含在 ODBC32DLL中,对用户是透明的。其任务是管理ODBC驱动程序,是ODBC中 最重要的部件 数据源。数据源包含∫数据库位置和数据库类型等信息,实际上是一种数据 逹接的抽象。应用程序要汸问一个数据库,首先必须用ODBC管理器注册一个数 据源,管理器根据数据源提供的数据厍位置、数据厍类型及ODBC驱动程序笭信 息,建立起ODBC与貝体数据库的联系.这样,只要应用程序将数据源名提供给 ODBC,ODBC就能建立起与相应数据库的连接。在ODBC中, ODBC API不能 直接访问数据库,必须通过驱动稈序管理器与数据库交换信息。驱动程序管理器 负责将应月程序对 ODBC API的调用传递给正确的驱动程序,而驱动程序在执行 完相应的操作后,将结果通过驱动程序管理器返回给应用程序。在访问ODBC数 据源时需要ODBC驱动程序的支持,用 Visual++6.0安装程序可以安装SQL Server、 Access、 Paradox、 dBase、 FoxPro、 Excel、 Oracle和 Microsoft Text 等驱动程序.在缺省情况下,VC6.0只会安装 SQL Server、 Access、 FoxPro和 d Base的驱动程序.如果用户需要安装别的驱动程序,则需要重新运行VC6.0的 安装程序并选择所需的驱动程序。ODBC使用层次的方法来管理数据厍,在数据 库通信结构的每一层,对可能出现依赖数据库产品自身特性的地方,ODBC都引 入一个公共接口以解决潜在的不一致性,从而很好地解决了基于数据库系统应用 程序的相对独立性,这也是ODBC一绎推出就获得巨大成功的重要原因之一。 24 CRecordSet类和 CRecord View类 CRecordset对象代表从一个数据源选择的一组记录的集合,被称作“记录集”。 CRecordset对象可以以两种形式使用:动态集和快照。动态集是与其它用户的数 据更新保持同步的动态数据集。快照是数据的静态视图。每一种形式都代表打开 记录集吋定的组记录,但是当滚动到动态集中的个记录时,动态集将反怏 后来由其它用户或由应用程序巾其它记录集对此记录所做的改变。 要使用任何一种记录集,通常需要从 CRecordset派生一个应用程序指定的记录集 类。记录集从一个数据源中选择记录,然后用户就可以 ◆在这些记录中滚动 更新记录并指定一种加锁模式。 过滤记录集,以获得那些从数据源中选择出来的可利用的记录 排序记录集。 ◆参数化该记录集以定制它的具有要直到运行时才知道的信息的选项。 CRecord view对象是在控件中显小数据库记录的视这种视是一种直接连接到 一个〔 Recordset对象上的格式视。此视是从一个对话框模板资源创建的,并将 CRecordSet对象的字段显示在对话框模板的控件中。 CRecordview对象利用对话 框数据交换(DDX)和记录字段交换(RFX)机制,使格式上的控件和记录集的 【实例截图】
【核心代码】
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论