毕业设计(论文)Delphi程序高考成绩管理系统设计.doc
大 学University毕业论文论文题目: 高考成绩管理系统 学 校: 专 业: 计算机科学与技术学 号: 学 生: 指导教师: 高考成绩管理系统作 者:指导教师:摘 要: 本文首先分析了高考成绩管理系统的应用现状,阐述了本高考成绩管理系统的开发目的。通过对数据库技术的现状与发展、数据库系统的选择原则、系统开发工具的选择一系列问题的分析确定了系统的开发平台。接着阐述了MIS系统基本理论,并在此理论指导下,详细给出了从高考成绩系统分析到总体设计详细设计与实现及测试的各个环节,最后对本系统作了客观评价评价,指明了系统的现实意义、缺点以及系统的升级方向。通过利用Delphi可视化的开发环境和面向对象的程序设计方法,开发出的高考成绩管理系统具有容易操作、界面友好、可靠性强的特点,基本实现预期所想的目标,是一个有实用价值的软件。关键字 :管理系统、主从数据表、文科、理科、DelphiAbstract :This article has analyzed the current applied situation of the score administrative system of college entrance examination at first, explaining the purpose of this system. Through analyzing the current situation and development of database technology, choice principal on database system, tools choice for system development and other series of problem, the article confirms the systematic developing platform. Then it has explained basic theory of MIS system, under the guidance of which, providing each link from score analyses system for college entrance examination to overall design in detail as well as the realization and testing. Finally, it gives the objective appraisal to this system, pointing out the realistic meaning, shortcoming and the upgrading direction of the system. Through utilizing Delphi visual development environment and method of target-oriental procedure, the score analyses system for college entrance examination has the characteristic of easy operation, friendly interface and highly reliability. This system reaches the goal of expectation and is a piece of software with practical value.Key words: database; data;window; connect; Delphi目 录前 言第一章 高考成绩管理系统概述1.1 MIS系统的概念1.2 系统的主要功能1.3 方法概述1.4高考成绩管理系统的应用现状第二章 高考成绩管理系统分析2.1 系统开发工具的选择2.1.1 Delphi 产品按照功能可以分为4个类型:2.1.2 Delphi7.0 的新特点:2.2系统目标2.2.1 系统可行性分析研究2.3 需求分析2.3.1 系统业务流程图2.3.2 系统的功能要求2.3.4 数据流程图第三章 系统总体设计3.1 系统功能模块图3.2 功能的说明3.3系统的运行要求3.4详细设计与实现3.4.1概念设计3.4.2 建立理科主数据表3.4.3建立理科从数据表3.4.4 系统模块设计举例第四章 系统测试4.1 系统开发环境4.1.1 系统测试4.2 系统运行与维护4.3 系统评价4.3.1 系统的特点4.3.2 系统的不足4.3.3 将来可能提出的要求总 结致谢参考文献前 言高考成绩的统计与查询工作是一件非常复杂和重要的事情,他涉及面广泛。数据量大,如有不慎,将会造成重大的影响。随着数据库技术的成熟和软件工程方法的发展,数据库产品(包括软、硬件)质量不断提高;品种、数量迅速增长和发展,各种计算机管理系统越来越完善。高考成绩管理系统是计算机技术与数据库技术相结合的产物。方便快捷的查询使工作人员能准确地掌握,并为其提供准确、可信的决策依据。其成功实现提高了工作效率,从而进入智能化计算高考成绩的新阶段。本文介绍以Delphi7.0.0为开发语言,运行于Windows XP的高考成绩管理系统的开发方法。该系统适合高考成绩的自动化管理,具有一定的实际推广应用价值。第一章 高考成绩管理系统概述1.1 MIS系统的概念管理信息系统(Management Information System,简称MIS)是一个由人、计算机等组成的能进行信息收集、传递、存储、加工、维护和使用的系统。管理信息系统按照其名称进行基本概念分解,可分为管理、信息和系统三个部分,事实上MIS正是在这三个科学领域的基础上发展起来的。 信息反映着客观事物,信息以数据、文字、符号、声音和图像等各种不同的形式表示出来。这些形式经过转换都可以输入到计算机中,在管理信息系统中,信息是管理的对象。数据是一组表示数量,行为和目标的非随机的可兼备的符号,它可以是字母,数字或其他符号,如*,%,也可以是图像,声音或者味道,数据项可以按使用的目的组织数据结构。管理的含义一般说来就是计划、组织、领导和控制的活动。利用已有的和可以争取到的各种资源,在实现其目标的过程中,所应用的一切思想、理论和方法就构成了管理的主要内容。系统是为了某种目标而将一些部件有机地结合的一个整体。一个大系统还可以分成若干个子系统,各子系统又可以有它自己的组成部件。总之,管理信息系统是一个综合性的概念,而且它还在不断地发展着。1.2 系统的主要功能 高考成绩管理系统的主要任务使用计算机对各种成绩信息进行管理,如查询、修改、增加、删除以及存储等,迅速准确地完成各种高考成绩的计算和统计工作,针对系统服务对象的具体要求,设计了高考成绩管理系统。高考成绩管理系统主要有以下几大功能:高考成绩录入系统。录入系统要有成绩的添加、修改、编辑等功能和自动统计功能。对成绩的变动进行处理。在成绩的输入过程中由于人为的原因,可能会产生数据的错误,所以要有改动。因此,设计系统是应该考虑到这些情况。对高考成绩的计算。可以对考生的考试科目进行计算,即考生的总分、平均分进行计算。查询系统功能。可以用考生的准考证号对成绩进行查询,因为考生的准考证号是唯一的,考生的姓名可能有重复。成绩系统分为理科和文科两种情况,使用时可以非常方便地在二者之间进行切换,根据不同的考生进行分类查询。系统中将建立数据表之间的主从关系。1.3 方法概述本高考成绩管理系统是采用面向对象的程序设计思想进行编制的,整个系统由若干个表单、类、以及一个主菜单组成,有项目管理器统一管理全部程序的编写和调试。用户可以通过主菜单或总表单调用系统的各项功能。1、面向对象设计不再是单纯的从代码的第一行一直编到最后一行,而是考虑如何创建类和对象,利用类和对象来简化程序设计,并提供代码的封装和可重用性,便于程序的维护与扩展。2、所谓的对象是一种抽象的名称,用来对应实现世界存在的“东西”。一个窗口、一个按钮、一个菜单都可视为一个对象,而按钮对象、菜单对象、又会出现在窗口对象中,因此按钮对象、菜单对象便是窗口的组件之一。对象内部的数据是不能随意更改的,必须由外部向其传递信息,再由对象按其方法加以处理。用户无需知道其任何细节,操作是封闭的,对象之间能通过函数调用相互通信。3、类可视为一个产品模具、一个模块。在面向对象设计中,类是对象的原型,是对象的制作器。类的概念是面向对象程序设计最重要的特征。所谓类,是指由数据结构及其相关操作所形成的集合,描述该类任一对象的共同的行为特征,是对一组性质相同的对象的程序描述,概括了对象的共同性质和数据。4、设计的高考成绩管理系统也是建立在一系列类基础之上的,其编程的思想是:先根据一定的需要创建一系列的子类或直接调用delphi提供的基类,编制程序时,由这些类派生出相应的对象,所派生出的对象继承了其父类所有的功能,而且具有很好的封装性,这样就可利用派生出的对象像搭积木一样来设计自己的程序。打个比方,就比如要制造一台机器,首先要制造各种零件的模具,然后用制造好的模具生产出所需的零件,所有这些做完后,剩下的就只是如何把这些零件组装起来,这样一台机器就很容易制造出来了。实际编程也是如此。每个表单都是由一定数量的对象按某一种方式组合在一起的,程序编制的核心是类的设计。1.4高考成绩管理系统的应用现状高考成绩的统计与查询工作是一件非常复杂和重要的事情,它涉及面广泛。数据量大,如有不慎,将会造成重大的影响。目前,我国高考成绩查询语境有非常成功的系统,但作为学习计算机编程,尤其是用delphi7.x编程,设计一个这样的系统也许还是第一次尝试。通过该设计,人们可以对数据库系统开发,尤其是用delphi7.x开发数据库系统,由更为深刻的认识。因为成绩处理具有通用性,所以我们的程序不仅可以处理高考成绩,对于各级各类学校的成绩处理也有作用。为此,只要掌握了高考成绩系统得开发应用,其他成绩管理系统得开发应用也就迎刃而解了。第二章 高考成绩管理系统分析2.1 系统开发工具的选择 现在市场上有很多数据库开发工具,如:Access,SQL Sever,Oracle等等,管理系统的开发工具又有很多,如:Visual basic、Delphi、ASP等等。这些都是很出色的数据库及管理信息系统的开发工具。 Delphi7.0 Studio(以下简称Delphi7.0)是Borland公司2002年8月6日正式宣布推出的,全新的可视化编程环境,为我们提供了一种方便、快捷的Windows应用程序开发工具。全面支持Microsoft公司.NET平台应用的开发。Borland公司因此成为第一个交付针对.NET中的开发工具公司,意味着软件业的两大巨子Borland和Microsoft在.NET领域携手合作。Delphi7.0集成了.NET的开发模型,还可以预展.NET应用功能。使用Delphi7.0,数以百万的Delphi开发者就能够利用他们已经掌握的Windows平台的工作经验和技巧从事.NET应用的开发。另外,Delphi7.0的高质量的应用生命周期解决方案,如建模、模型驱动的架构、报表,以及跨平台开发创造了新的令人激动的Delphi应用开发机会。 Delphi7.0是一个针对Windows平台的跨平台快速开发(RAD)环境。Delphi7.0的一个显著特性是企业开发和部署。通过新的UML设计器和模型驱动的架构(MDA)技术,它允许开发者利用企业应用开发方法,更快地把概念变成产品。 Delphi自从1995年2月诞生以来,获得了巨大的荣誉和广泛的影响力,以可视化编程、强大的编译功能、友好的用户界面闻名于世。主要特点是:高效的可视化组件库和面向对象的架构。具有多种操作向导和在线帮助,大大方便程序编写。界面设计所见即所得(What You See Is What You Get,WYSIWYG)和鼠标拖拽方式,可以轻松设计出华丽的界面。支持各种最新及最常用的技术如Win32API、OEL、COM、ActiveX、DirectX等。全面支持Windows98/NT应用程序。具有开放式数据库结构,集成了丰富的数据库开发工具。具有强大的面向网络编程功能,其C/S开发工具在高性能的快速应用程序开发领域成为行业标准。2.1.1 Delphi 产品按照功能可以分为4个类型:Delphi集成开发环境(Integrate Develop Enviornment);提供友好的用户编程开发界面,集成了高效的编译器、项目管理器、团队开发支持、高级调试等功能。Delphi可视化组件库(Visual Componet Library):提供几百个常用组件,用于数据库访问、用户接口、数据处理、报表和Internet开发。Borland数据(Borland Data Engineer):能够进行数据库管理,并与数据库服务器高速连接。MIDAS:是一个集成于Delphi的分布式应用集合,功能强大,主页用于商业逻辑的智能集中管理和企业交易的快速处理。2.1.2 Delphi7.0 的新特点:企业应用的MAD开发:通过让开发者从设计到发布都重复使用一个应用程序,加速开发进程,同时显著减少代码量和需要的开发时间。可视化的加速web开发:让开发者能够在Delphi7.0 环境中可视化控件Web应用,并且利用它的应用模型框架,不必再考虑通用的服务器端的开发任务,还能透明地处理会话管理。内建的对Linux的跨平台支持:Delphi7.0在出售时将附带Delphi语言版本的Kylik3。Kylik3是第一个Linux操作系统上的高性能的可视化集成开发环境(IDE),它适合用来快速建立数据库应用、GUI应用、Web应用和Web服务应用。Windows XP应用:Delphi7.0包含了对Windows XP 风格支持,让开发者能够创建可以利用Windows XP使用者界面风格的应用。Delphi实际上是Pascal语言的一种版本,但它与传统的Pascal语言有天壤之别。一个Delphi程序首先是应用程序框架,而这一框架正是应用程序的“骨架”。在骨架上即使没有附着任何东西,仍可以严格地按照设计运行。程序员编程的工作只是在“骨架”中加入程序。缺省的应用程序是一个空白的窗体(Form),程序员可以运行它,结果得到一个空白的窗口。这个窗口具有Windows窗口的全部性质:可以被放大缩小、移动、最大最小化等,但程序员却没有编写一行程序。因此,可以说应用程序框架通过提供所有应用程序共有的东西,为用户应用程序的开发打下了良好的基础。Delphi已经为程序员做好了一切基础工作程序框架就是一个已经完成的可运行应用程序,只是不处理任何事情。程序员所需要做的,只是在程序中加入完成程序员所需功能的代码而已。在空白窗口的背后,应用程序的框架正在等待用户的输入。由于程序员并未告诉它接收到用户输入后作何反应,窗口除了响应Windows的基本操作(移动、缩放等)外,它只是接受用户的输入,然后再忽略。Delphi把Windows编程的回调、句柄处理等繁复过程都放在一个不可见的Romulam覆盖物下面,这样程序员可以不为它们所困扰,轻松从容地对可视部件进行编程。 面向对象的程序设计(Object-Oriented Programming,简记为OOP)是Delphi诞生的基础。OOP立意于创建软件重用代码,具备更好地模拟现实世界环境的能力,这使它被公认为是自上而下编程的优胜者。它通过给程序中加入扩展语句,把函数“封装”进Windows编程所必需的“对象”中。面向对象的编程语言使得复杂的工作条理清晰、编写容易。说它是一场革命,不是对对象本身而言,而是对它们处理工作的能力而言。对象并不与传统程序设计和编程方法兼容,只是部分面向对象反而会使情形更糟。除非整个开发环境都是面向对象的,否则对象产生的好处还没有带来的麻烦多。而Delphi是完全面向对象的,这就使得Delphi成为一种触手可及的促进软件重用的开发工具,从而具有强大的吸引力。 一些早期的具有OOP性能的程序语言如C+,Pascal,Smalltalk等,虽然具有面向对象的特征,但不能轻松地画出可视化对象,与用户交互能力较差,程序员仍然要编写大量的代码。Delphi的推出,填补了这项空白。程序员不必自己建立对象,只要在提供的程序框架中加入完成功能的代码,其余的都交给Delphi去做。欲生成漂亮的界面和结构良好的程序丝毫不必绞尽脑汁,Delphi将帮助程序员轻松地完成。它允许在一个具有真正OOP扩展的可视化编程环境中,使用它的Object Pascal语言。这种革命性的组合,使得可视化编程与面向对象的开发框架紧密地结合起来。2.2系统目标本系统要对高考成绩进行数据输入,并可以查询,它涉及面广泛,数据量大,如有不慎,将会造成巨大的损失。2.2.1 系统可行性分析研究可行性研究的目的使用最小的代价在尽可能短的时间里确定问题是否能解决,通过复杂系统的规模与目标,研究与此类似的系统后,我们具体从下面两个方面考虑。 技术上的可行性。由于对高考成绩管理系统这一类的成绩统计系统进行开发已有一定的时期,有很多成功的实例,技术基础也已经非常雄厚,因而技术上的准备应该不成问题。经济上的可行性。由于高考成绩管理系统是一个比较小型的系统,是由一个人进行开发的,所以从人力、物力、财力方面来说都是可行的。2.3 需求分析对用户需求的分析应该全面、深入、发展,全面是指考查由管理的信息是否有纰漏,必须保证各静态、动态信息的完全;深入是指对信息的内容、结构、含义、变换、生存周期的分析和认识;发展是指对信息未来发展变化的预测,因为信息在某个系统、机构内的变化往往存在着自身特有的发展规律,需求分析应该预见这种规律,否则就会缩短的使用寿命。为了保证需求分析的完备性,就必须保证需求分析的时间。2.3.1 系统业务流程图 用户登录 成绩查询成绩计算成绩保存 数据输入浏览报表 图3.1系统业务流程图2.3.2 系统的功能要求整体结构合理,风格一致,模块化结构,界面清晰,接口灵活,操作简便。开发方法,文档规范化,便于管理,可扩充。完善的数据输入,维护,输出。自检性能高,用户误输、错输均有提示。容错性能高,某个用户的操作错误不会引起整个系统的瘫痪,每一功能的操作都有信息提示以免重复操作,错误操作有警告,以便用户及时改正。2.3.4 数据流程图1.管理系统的数据流程图符号如图3.2所示 外部实体 处理 数据流 数据存储 图3.2 数据流程图的符号2.本系统的数据流程如图3.3所示系统管理员成绩信息管理 成绩计算高考成绩情况查询各科成绩成绩总分 浏览成绩成绩平均分上级主管部门 数据录入图3.3高考成绩管理系统的数据流程图第三章 系统总体设计本部分主要介绍系统要实现的功能,打好设计的总体框架,使用户对要开发的系统有一个系统、全面、确切的认识。3.1 系统功能模块图本系统在设计时采用结构化程序的设计方法,系统的总体结构采用菜单来调用表单,利用表单来对信息进行管理、数据加工、信息查询、系统维护等工作,系统的功能模块结构图如图3.1所示。高考成绩管理系统数据输入成绩查询考号查询退 出理科成绩文科成绩理科成绩查询总分、平均分文科成绩查询考号查询退 出图3.1 系统功能模块结构图3.2 功能的说明 本系统大致分为如下四大功能模块。1.数据输入分为理科成绩输入和文科成绩输入:在理科数据输入模块中,可以对考生的准考证号、各科成绩进行浏览,并可以对考生信息进行增加记录,修改记录、删除记录等操作;在文科数据输入模块中,可以对考生的准考证号、各科成绩进行浏览,并可以对考生信息进行增加记录,修改记录、删除记录等操作。2.成绩查询分为理科成绩查询、文科成绩查询和对考生的成绩进行总分和平均分的计算。3.退出此功能模块为退出系统。4.版本信息 此功能模块为版本信息。3.3系统的运行要求1硬件要求。设备名称说明处理器奔腾III以上,256MB内 存256MB,内存越大,速度越快硬 盘40GB鼠 标双飞燕2D鼠标2软件要求。名 称说明操作系统WINDOWSXP/NT应用软件Delphi7.x本部分简明扼要的介绍了各个部分要实现的功能,搭好了设计的总体框架,使我们对要开发的系统能够更加系统的,全面的,确切的认识,下一步就可以进行系统的详细设计与具体功能的实现了。3.4详细设计与实现本部分说明了系统的整个设计,再以程序数据输入,成绩计算以及查询为例详细说明了系统是怎样实现的。3.4.1概念设计 概念设计基础是完成需求分析后提供的需求说明书,用概念数据模型表示数据及其相互间的关系,这种数据模型是与DBMS无关的、面向现实世界的、易如理解的数据模型,其独立于计算机的数据模型,独立于计算机的软硬件系统,与用户进行交流十分方便。 概念性数据模型关心的是如何完整、正确地反映客观实际情况,不关心在数据库中如何实现。这种数据模式能真实地反应用户要求的实际情况,是一种容易被人们理解的直观的数据库结构模式。同时也是一种相对稳定统一的数据模式,一般情况下很少变动。概念性数据在用户和设计者之间建立了桥梁,是设计数据库结构的基础。 概念设计中自上向下的实体分析方法,即常用的实体联系模型(简称E-R模型),对具体数据进行抽象加工,将实体集合抽象成实体类型。用实体间联系反映现实世界事物间的内在联系。E-R模型是建立概念性数据模型的有力工具。 通过对高考成绩管理内容和过程的分析,本系统应设计的实体和属性如下: 本系统一共用到了4个表。如下: 理科主表(理科主表.db)(包括准考证号、学生姓名、考前学校) 理科从表(理科从表.db)(包括科目序号、准考证号、考试科目、考试成绩) 文科主表(理科主表.db)(包括准考证号、学生姓名、考前学校) 文科从表(理科从表.db)(包括科目序号、准考证号、考试科目、考试成绩)3.4.2 建立理科主数据表首先定义理科学生成绩管理的主数据表,它分别管理学生的“准考证号”、“学生姓名”、和“考前学校”三个方面的内容。而性别、年龄、出生地点等信息均无须在数据表中加以说明,因为一个考生的准考证号包含了这些内容。表3.1 理科主数据表的逻辑结构定义表字段序号字段名称数据类型字段宽度小数位数关键字1准考证号数字*2学生姓名文本183考前学校文本28在理科主数据表的逻辑结构定义中,将学生的“准考证号”字段定义为关键字段,因为在全国的一切考生中,考生编号是不能重复的,每一考生必须有唯一一个准考证号码。此外关键字段的建立除使该字段记录的数据具有唯一性之外,还是进行数据表之间连接的重要手段。需要通过一个数据表的关键字段以另一个数据表的关键字段或第二索引的字段进行关联,从而将两个数据表的记录有机地联系起来。3.4.3 建立理科从数据表从表的字段比较少,主要包括四个字段:准考证号(它与主表中的准考证号相关联)、考试科目、考试成绩和科目序号。图3.2 理科从表结构字段序号字段名称数据类型字段宽度小数位数关键字1科目序号数字*2准考证号数字第二索引3考试科目文本184考试成绩数字表3.2 理科从数据表的逻辑结构定义表在理科从数据表的逻辑结构定义中,将“科目序号”作为关键字段,而定义“准考证号”字段为第二索引,因为在从表中,需要登录几个考试科目的成绩,而每名学生的每一科目的成绩不能重复,因而需要将“考试序号”建立为关键字段,而从表与主表进行关联时,需要一个第二索引字段与主表中的关键字段建立关联。图3.3 理科从表结构在从表中建立一个科目序号,主要为了现实学号和那个的科目排列,并将其关键字进行设置。另外,要从表中的准考证号与主表中的准考证号相互关联,需要在从表中为从表的准考证号建立第二索引。在数据库桌面工具程序中设置“ 准考证号”字段,在右边的字段属性列表框中选择第二索引Secondary indexes 条目,如下图。 图3.4字段第二索引列选择 图3.5定义第二索引字段选择单击OK按钮,则出现一个索引名输入框,将索引名取为“kh” (即考号)即可完成创建第二索引的过程。 图3.6 第二索引名设置3.4.4 建立文科主表与文科从表 以完全相同的方式、以相同的字段名和数据表结构,创建文科主表和文科从表,只是保存的数据表名称不同。在文科从表中的准考证号仍需要建立第二索引。3.4.5 主控界面设计 在系统所需要的一切数据表完成之后,就可以着手进行系统界面的设计与创建了。通常一个系统必须存在一个主控界面。主控界面是调用其它界面的载体。3.4.6 主从表的关联方法在理科成绩录入窗体设计中要将数据录入并保存在数据表中。需要用一系列的数据库相关控件将其连接起来。在窗体中插入的控件之中,一些数据空间是成对插入的。因为成绩处理窗体中我们将用到两个表,并在两个表之间建立关联。在可视化的程序开发中,进行两个数据表的关联主要通过数据表控件的属性设置来进行。在属性设置中,最重要的是两个数据表中字段的关联所谓设置方法。在这个控件里存在两个数据表控件,一个是Table1,另一个是Tanle2控件。在创建数据表结构时,位于主表与从表之间的一些字段被安排为关键字段,一些字段被安排为第二索引字段,这就是即将需要建立关联的基础。建立关联就是里从表与主表的关联。 图3.7注数据源选择选中Table2控件,在对象监视器中选择主数据源MasterSource,如图3.7 单击对象监视器中的Masterfields右边的开关按钮,则出现一个建立关联的连接选择框,在框中将会出现主表与从表中已经建立过索引的能够进行关联的两个或多个字段名(注意,如果再创建数据表时未建立任何索引,则不会出现这样的字段名,因此建立关联字段与第二索引字段是非常重的)如图3.8所示。图3.8关联的字段显示 图3.9两表中被关联的字段在图3.8中选择已经建立的两个字段,即主表中的关键字段“准考证号”和从表中的第二索引字段“准考证号”。单击Add按钮后,则出现了两个字段被连接的信息,如图3.9所示。最后单击OK按钮,即完成了窗体中两个表中主关键字段或索引过的字段的相互关联关系得建立。3.4.7 系统模块设计举例 下面对本系统的具体的几个模块做详细说明。1、主窗口调用子窗体 其它的窗体入高考理科成绩录入、高考理科成绩查询、高考文科成绩录入、高考文科成绩查询四个窗体全部都是子窗体,需要由主窗体去调用,这主要通过主窗体的四个按钮空间的代码去完成。其代码如下。procedure TForm1.RadioButton1Click(Sender: TObject);beginFORM2.SHOW;end;procedure TForm1.RadioButton2Click(Sender: TObject);beginFORM3.SHOW;end;2、数据源连接object Table1: TTable 数据表控件 Active = True 激活状态 AutoRefresh = True 自动刷新纪录 TableName = 理科主表.db 连接的数据表名 object DataSource1: TDataSource 数据源控件DataSet = Table1 连接的数据表控件object DataSource2: TDataSource 数据源控件DataSet = Table2 连接的数据表名称object Table2: TTable 数据表控件 Active = True 激活 IndexName = 'kh' 索引名称 MasterFields = 准考证号 关键索引字段 MasterSource = DataSource1 主数据源TableName =理科从表.db 连接的数据表执行查询的事件代码procedure TForm3.SpeedButton1Click(Sender: TObject);var 声明变量sum1:real; 实型变量s:string; 字符串变量s1:string;aver:real;bookmark1:tbookmark; 书签变量begintable1.refresh;with table1 do 刷新数据表,以保证查询的完整性try disablecontrols; filtered:=false; memo1.Text:='准考证号='+edit1.text; 查询条件 filter:=memo1.text; 执行查询过滤条件 filtered:=true; 执行查询finally enablecontrols;if table1.recordcount=0 then beginmessagebeep(1);showmessage('没有符合条件的记录,请确认条件或放弃查询!');if messageDlg('是否继续查询?,只有结束查询才能作其它操作!',mtinformation,mbYes,mbNo,0)=mrno then begin filtered:=false; table1.close; table1.open;end;end else beginsum1:=0.00;bookmark1:=table1.getbookmark;table1.disablecontrols;table1.first;while not table1.eof dobeginsum1:=sum1+table1.fieldbyname('考试成绩').value; 统计总成绩table1.Next;aver:=sum1/table1.recordcount; 计算平均值end;table1.gotobookmark(bookmark1);table1.FreeBookmark(bookmark1);table1.EnableControls;str(sum1:8:2,s);str(aver:8:2,s1);edit2.text:=s;edit3.Text:=s1; if messageDlg('是否继续查询?,只有结束查询才能作其它操作!',mtinformation,mbYes,mbNo,0)=mrno then begin filtered:=false; table1.close; table1.open;end; end;end;第四章 系统测试4.1 系统开发环境系统开发环境包括硬件平台和软件平台两种。硬件平台是指开发与运行所需要的硬件环境,主要包括计算机机型及硬件配置。由于本系统是一个小型的MIS管理系统,因此对计算机硬件的要求不高,比较经济,只要配备有奔腾四代赛扬处理器2.0GHZ(或以上)、DDR128M内存(或以上)、40G硬盘(或以上)的普通微机即可顺利运行。软件平台是指系统开发与运行的软件环境。本系统在开发时选用了稳定性较强的Windows XP中文专业版和delphi7.0作为开发语言,同时选用了delphi自带的数据库。Delphi7.0具有可视化的开发环境,可以快速完成系统的开发,内部集成的数据库访问通道,使得可以轻松方便的对数据库管理。数据库采用delphi自带的。由于本系统要求,采用它完全可以适合工作需求,并且它所支持的数据类型十分丰富,维护简便,费用比较低,人员素质要求不是很高,容易升级。本系统在单机上运行。4.1.1 系统测试在MIS开发过程中采用了多种措施保证软件质量,但是实际开发过程中还是不可避免地会产生差错,系统中通常可能隐藏着错误和缺陷,不经周密测试的系统投入运行,将会造成难以想像的后果,因此系统测试是MIS开发过程中为保证软件质量必须进行的工作。大量统计资料表明,系统测试的工作量往往占MIS开发总工作量的40%以上。因此,必须重视测试