已阅读5页,还剩24页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目 录引言3一、绪论 3(一)数据库应用系统开发简介31、数据库 32、数据库管理系统 4(二) 学生成绩管理系统4二、数据库理论基础5(一)数据库系统设计5(二)SQL语言6三、系统分析与设计7(一)系统的总统分析 7(二)系统需求分析 7(三)系统对软硬件的要求8(四)系统各模块的详细设计81、学生信息管理模块82、导师信息管理模块 93、课程信息管理模块94、选课信息管理模块 95、成绩查询模块 9四、系统详细系统分析与创建数据库10(一)数据库概念设计101、语义描述 102、实体联系图(ER图)10(二)数据库逻辑设计阶段及表的设计 12五、应用程序设计详细设计与实现 14(一)学生信息管理模块 141、模块的功能 142、模块的工作流程 14(二)导师信息管理模块 181、模块的功能 182、模块的工作流程 19(三)课程信息管理模块191、模块的功能 192、模块的工作流程 20(四)选课信息管理模块201、模块的功能202、模块的工作流程 21(五)成绩管理模块 211、模块的功能212、模块的工作流程 22(六)创建主模块 22六、结束语22致 谢23参考文献23附录23基于VC+的研究生成绩管理系统摘要:学生成绩管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。因此本人结合现在学校的的研究生教育现状,对MS SQL Server2000数据库管理系统、SQL语言原理、VC+程序设计,VC+数据库技术进行了较深入的学习和应用,主要完成对研究生成绩管理系统的需求分析、功能模块划分、数据库模式分析,并由此设计了数据库结构和应用程序。关键词:数据库,SQL语言,MS SQL Server,VC6.0,信息管理,对话框。引言学生成绩管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理数据库文件,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生成绩信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生成绩管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。因此,开发这样一套管理软件成为很有必要的事情,在下面的各章中我将以开发一套小型的学生成绩管理系统为例,谈谈其开发过程和所涉及到的问题及解决方法。一绪 论(一) 数据库应用系统开发简介数据库应用系统开发的目标是建立一个满足用户长期需求的产品。开发的主要过程为:理解用户的需求,然后,把它们转变为有效的数据库设计。把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用。 数据库如图1.1显示了数据库系统。数据库由DBMS(数据库管理系统)处理,DBMS则由开发人员和用户通过应用程序直接或间接地使用。它主要包括四个要素:用户数据、元数据、索引和应用元数据。用户用户用户应用系统应用系统开发数据库管理系统操作系统数据库数据库管理员图1.1数据库系统 数据库管理系统数据库管理系统(DBMS)是指数据库系统中管理数据的软件系统。DBMS是数据库系统的核心组成部分。对数据库的一切操作,包括定义、更新及各种控制,都是通过DBMS进行的。DBMS总是基于某种数据模型,可以把DBMS看成是某种数据模型在计算机系统上的具体实现。根据数据模型的不同,DBMS可以分成层次型、网状型、关系型、面向对象型等。MS SQL Server2000就是一种关系型数据库管理系统。关系模型主要是用二维表格结构表达实体集,用外键表示实体间联系。关系模型是由若干个关系模式组成的集合。关系模式相当于前面提到的记录类型,它的实例称为关系,每个关系实际上是一张二维表格。关系模型和层次、网状模型的最大判别是用关键码而不是用指针导航数据,表格简单用户易懂,编程时并不涉及存储结构,访问技术等细节。关系模型是数学化模型。SQL语言是关系数据库的标准化语言,已得到了广泛的应用。(二)学生成绩管理系统当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好学生成绩信息而设计的。学生成绩作为一种学生信息资源的集散地,包含很多的信息数据的管理,现今,有很多的学校都是初步开始使用,很多学校未使用计算机进行信息管理。根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理。数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽管有的学校有计算机,但是学校还没用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。数据处理手工操作,工作量大,出错率高,出错后不易更改。学校对学生信息采取手工方式进行人工管理,由于信息比较多,学生成绩信息的管理工作混乱而又复杂;一般情况下学生的信息是记录在稿纸上的,时间一长,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。如要对很长时间以前的信息进行更改就更加困难了。基于这此问题,我认为有必要建立一个学生成绩管理系统,使学生成绩管理工作规范化,系统化,程序化,避免学生成绩信息管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改学生信息。二 数据库理论基础(一)数据库系统设计一个成功的信息管理系统,是建立在许多条件之上的,而数据库是其中一个非常重要的条件和关键技术。信息管理系统所涉及的数据库设计分五个步骤:数据库需求分析、概念设计、逻辑设计、物理设计与加载测试。信息系统的主要任务是通过大量的数据获得管理所需要的信息,这就必须存储和管理大量的数据。因此建立一个良好的数据组织结构和数据库,使整个系统都可以迅速、方便、准确地调用和管理所需的数据,是衡量信息系统开发工作好坏的主要指标之一。数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类、分组系统和逻辑层次组织起来,是面向用户的。数据库设计时需要综合企业各个部门的存档数据和数据需求,分析各个数据之间的关系,按照DBMS提供的功能和描述工具,设计出规模适当、正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型。为防止数据库出现更新异常、插入异常、删除异常、数据冗余太大等现象,关系型数据库要尽量按关系规范化要求进行数据库设计。(二) SQL语言SQL功能强大,是一种完备的数据处理语言,不仅用于数据库查询,而且用于数据库中的数据修改和更新,概括起来,它可以分成以下几组:DML(Data Manipulation Language,数据操作语言):用于检索或者修改数据;DDL(Data Definition Language,数据定义语言): 用于定义数据的结构,比如 创建、修改或者删除数据库对象; DCL(Data Control Language,数据控制语言):用于定义数据库用户的权限。DML组可以细分为以下的几个语句:SELECT:用于检索数据;INSERT:用于增加数据到数据库;UPDATE:用于从数据库中修改现存的数据;DELETE:用于从数据库中删除数据。DDL语句可以用于创建用户和重建数据库对象。下面是DDL命令:CREATE TABLE,ALTER TABLE,DROP TABLE,CREATE INDEX,DROP INDEX下面是一个简单SQL语句的例子:我们使用SQL语句来从表中检索StuID为001的研究生姓名:SELECT StuName FROM STUDENTS WHERE StuID = 001数据定义语言DDL:它是用来创建和修改数据库结构的一种语句,包括 Create、Alter和Drop 语句。 数据操作语言DML:包括数据查询与数据更新。数据查询主要是由Select语句完成,这一点不再赘述。而数据更新所造成的风险大大超过数据查询。数据库管理系统必须在更改期内保护所存储的数据的一致性,确保有效的数据进入数据库,数据库必须保持一致性,DBMS还必须协调多用户的并行更新,以确保用户和它们的更改不至于影响其它用户的作业。用于修改数据库内容的 SQL 语句主要有以下三个: (1) Insert,向一个表中加入新的数据行 (2) Delete,从一个表中删除数据行(3) Update,更改数据库中已经存在的数据Insert标准语法: INSERT INTO table_name (col1, col2.) VALUES(value1, value2.)下例要将导师号为001作为一个新的导师信息加入导师表TEACHERS中Insert IntoTEACHERS (TeaID,TeaName,TeaSex,TeaStatus,TeaWay) values (001,小洁,女,教授,人工智能)Insert 语句还可以将多行数据添加到目标表中去,在这种形式的 Insert 语句中,新行的数据值不是在语句正文中明确地指定的,而是语句中指定的一个数据库查询。添加的值来自数据库自身的行,在某些特定的状态下,这是非常有用的。多行 Insert 语句为拷贝数据提供了一种紧凑而高效的方法。Update语句用于更新单表中选定行的一列或多列的值。要更新的目标表在语句中定义,Set子句则指定要更新哪些列并计算它们的值。Update语句总是包含Where语句,而且Update语句比较危险,所以您必须明确地认识到Where语句的重要性,Where语句被用来指定需要更新的行。标准语法:UPDATE table_nameSET columnname1 = value1, columname2 = value2.WHERE search_conditionDelete 语句标准语法:DELETE FROM tablename WHERE condition三 系统分析与设计(一)系统的总体分析随着计算机的发展及网络技术的应用,当今社会正快速向信息化社会前进,信息自动化的作用也越来越大。而在日常生活中信息技术的不断融入,在技术越来越先进的同时,应该从以前繁琐的事务中解放出来。随着学校对研究生招生规模的不断扩大,研究生的数量急剧增加,有关学生的各种信息量也成倍增长。面对庞大的信息量,就需要有研究生成绩管理系统来提高学生管理工作的效率。通过这样的系统,可以方便地查询、统计和修改研究生的基本情况、研究生的导师情况、研究生的课程开课情况和选课情况及成绩,实现信息的规范管理、科学统计和快速查询,从而减少管理方面的工作量,同时避免由于人为因素造成数据遗漏和误报等。(二) 系统的需求分析从软件工程中需求分析的角度来分析调查研究生成绩管理信息系统使用要求:用户将从数据库中获得研究生信息、导师信息、课程信息、选课信息以及分数信息等,从而需要建立以上各个信息的模块来实现数据的交互。用户要完成查询、添加、修改、删除、浏览等处理功能,故需要建立上述功能。安全性、协调性和完整性。当用户添加学号时,要保证学号不能重复,同样导师号码、课程号码也不可重复,在选课信息中学号和课程号码的组合也不能重复;研究生信息、课程信息和导师信息中的导师号要一致,不能使用不同的数据类型,研究生信息、课程信息和选课信息中的研究生学号要一致,课程号也要一致,这样才能实现查询功能和各个信息模块的协调;另外,学生表中的导师号和课程号码必须使用导师表中已经存在的号码,选课表中学号和课程号码必须使用已经存在的号码,所以对数据进行添加、修改、删除、查询时要进行监控,进行出错提示及处理。(三) 系统对软硬件的要求在软、硬件方面对系统的要求,软件要求易学,容易掌握,可以很简单方便的管理各种信息。硬件的配置要求不能太高,这样可以很好的适应当前的学校情况。(四) 系统各模块的详细设计根据需求分析,本系统结构采用当前流行的C/S结构,也就是客户端/服务器模式,该模式的主要形式是系统的管理人员以及使用者在客户端对服务器端的数据库进行各种操作,操作的结果又由服务器端的数据库发送回客户端显示出来,客户端和数据库服务器可以在同一台计算机上安装,也可以在出于联网状态的不同机器上安装,形式比较自由,安装比较方便。该模式同时具有开发时间短,成本较低,而且数据量的传输快等优点。根据需求分析的结果,本系统主要划分为以下五个子模块:学生信息管理、导师信息管理、课程信息管理、选课信息管理、成绩信息查询。入图3-1所示研究生成绩管理信息系统学生信息管理导师信息管理课程信息管理选课信息管理成绩信息管理图3-1 系统功能模块 学生信息管理模块工作人员通过此功能来管理学生信息,包括浏览、查询、添加、修改和删除功能。在进行学生信息的添加时,系统会自动检测所添加的学生信息中的导师号在导师表里是否存在,如果不存在,会提示用户导师号输入有误;同时检查所添加的学生号在学生表中是否已经存在,如果存在,会提示用户该学生已经存在。在进行学生信息的删除时,要首先弹出提示窗口让用户确认是否删除,只有在用户确认后才能够进行学生信息的删除。在进行学生信息的修改时,不准用户修改学号,因为学号作为数据库中学生表的主键是不同学生的惟一标识,不准修改学号可以防止不经意将学号改错;如果确实要修改学号,可以通过数据库管理员来实现,也可以先将错误学号信息删除再添加正确的学生信息,这样在删除时会弹出提示窗口让用户是否删除,给用户以提示,防止意外错误。 导师信息管理模块工作人员通过此功能来管理导师信息,包括浏览、查询、添加、修改和删除功能。在进行导师信息的添加时,系统会自动检测所添加的导师号在导师表里是否已经存在,如果存在,会提示用户该导师在导师表中已经存在。在进行导师信息的删除时,要首先弹出提示窗口让用户确认是否删除,只有在用户确认后才能够进行导师信息的删除。在进行导师信息的修改时,不准用户修改导师号。 课程信息管理模块工作人员通过此功能来管理课程信息,包括浏览、查询、添加、修改和删除功能。在进行课程信息的添加时,系统会自动检测所添加的课程信息中的导师号在导师表里是否存在,如果不存在,会提示用户导师号输入有误;同时检查所添加的课程号在学生表中是否已经存在,如果存在,会提示用户该课程在课程表中已经存在。在进行课程信息的删除时,要首先弹出提示窗口让用户确认是否删除,只有在用户确认后才能够进行课程信息的删除。在进行课程信息的修改时,不准用户修改课程号。 选课信息管理模块工作人员通过此功能来管理课程信息,包括浏览、查询、添加、修改和删除功能。在进行选课信息的添加时,系统会自动检测所添加的选课信息中的学号在学生表里是否存在,课程号在课程表中是否不存在,只要有一个不存在,就会提示用户输入有误;同时检测所添加的学号和课程号的组合在选课表中是否已经存在,如果存在,会提示用户该选课在选课表中已经存在。在进行选课信息的删除时,要首先弹出提示窗口让用户确认是否删除,只有在用户确认后才能够进行选课信息的删除。在进行选课信息的修改时,不准用户修改学号和课程号。 成绩查询模块工作人员通过此模块来查询成绩信息,包括按学号查询和按课程号查询,即可以查询某个学生的成绩情况,也可以查询所开设的某门课程的成绩情况。输入学号,通过DataGrid控件可以获得该生所选的各门课程及成绩,并同时显示共计课程门数、该生平均分和不及格门数;输入课程号,仍然通过DataGrid控件可以获得选该课程的所有学生及成绩,并同时显示共计学生人数、该课程平均分和不及格人数。四 详细分析与创建数据库根据系统功能需求,数据库采用Microsoft SQL Server 2000 建立。Microsoft SQL Server 2000是新一代大型电子商务、数据仓库和数据库解决方案。SQL Server 2000在分析服务、数据转换服务、数据仓库等方面引入了大量新特性。它为Web标准提供了强劲的支持,并为系统管理和调整提供了许多有力的工具。它完全可以适合我们的工作需求,并且它所支持的数据类型十分丰富,操作简便,维护费用比较低,容易升级。(一)数据库概念设计语义描述概念设计阶段与具体的DBMS(数据库管理系统)无关,不考虑数据与操作之间的关系,仅从概念上明确地描述数据与数据之间的关系。即采用一定的形式来综合表示数据库概念结构。概念结构独立于数据库逻辑结构,也独立特定的DBMS,其主要特点是;(1)能充分反映现实世界,包括实体之间的联系,能满足用户对数据处理的要求,是现实世界的一个真实模型。(2)易于理解,从而可以和不熟悉计算机的用户交换意见。用户的积极参与是数据库设计成功与否的关键。(3)易于改动。当现实世界改变,容易修改和扩充。(4)易于向关系、网状或层次等各种数据模型转换。因此概念结构是各种数据模型的共同基础,它比数据模型更独立于机器,从而更加稳定。研究生成绩管理信息系统的概念设计描述如下:(1)导师和研究生之间具有指导关系,多个研究生可以跟随一个导师。(2)导师和课程之间是开设讲解关系,一位导师可以开设多门课。(3)研究生和课程之间是选择的关系,一个研究生能够选择多门课,同时多个研究生也能选修同一门课。实体-联系图实体-联系图又称E-R图,在数据库设计中是十分重要的。选择适宜的模型来表示数据和功能,对数据库设计和功能分析有重大影响。本系统中的E-R图如图4-1所示。学生入学年份姓名学号出生地出生年份教师教师姓名教师号性别职称研究方向课程教师号教师号教师号教师号指导学生教师课程选课教授 n 1 n 1 m n图4-2 系统E-R图(二)数据库逻辑设计阶段及表的设计逻辑设计阶段的任务是把概念结构转换为选用DBMS(数据库管理系统)所支持的模式。在系统分析阶段所得到的总的E-R图以及所采用DBMS的有关规定是数据库设计的基础,或叫输入信息。但是,DBMS的数据描述语言不能直接对E-R图进行定义,必须将它转换成DBMS所能接受的数据类型,也就是层次模型、网状模型或关系模型,然后再对相应的数据模型定义。对于一对多的实体关系,其转换为层次和网状模型是直接的,但是对于多对多的实体关系,转换为这两种模型就较为麻烦(需要增加连接记录)。实体关系转换为关系模型较为方便,关系模型的设计由于有了规范花的理论和函数依赖、多值依赖的理论,使得我们对于实体的属性之间的关系看得更为透彻,因而可以设计出较为理想的关系模型。所以,在关系模型的设计中又多了一个规范化的过程。对于一个具体应用来说,到底规范化进行到什么程度,这要权衡响应时间和潜在问题两者的利弊才能决定。就本系统来说,第三范式或BCNF范式也就足够了。根据模块的设计,以及根据规范化的设计要求,该系统的数据库表设计如表所示,表主要用来存放学生的信息,表用来存放导师的信息,表用来存放开设课程的信息。表用来存放选课的信息。字段名称数据类型字段属性字段大小作用必填字段索引是否主键StuIDInt4学生编号是有(无重复)是StuNameVarchar50学生姓名否无否StuSexChar2学生性别否无否StuYearDatetime8入学时间否无否TeaIDInt4导师编号是无否ComYearDatetime8出生时间否无否ComFromVarchar50学生来源否无否表41 学生信息表STUDENTS字段名称数据类型字段属性字段大小作用必填字段索引是否主键TeaIDInt4导师编号是有(无重复)是TeaNameVarchar50导师姓名否无否TeaSexChar2导师性别否无否TeaStatusVarchar50导师职称否无否TeaWayVarchar50研究方向否无否表42 导师信息表TEACHERS字段名称数据类型字段属性字段大小作用必填字段索引是否主键CouIDInt4课程编号是有(无重复)是CouNameVarchar50课程名否无否CouScoreTinyInt1课程分数否无否CouTeaInt4任课教师否无否CouKindVarchar50课程类型否无否表43 课程信息表COURSES字段名称数据类型字段属性字段大小作用必填字段索引是否主键StuIDInt4学生编号是有(无重复)是CouIDInt4课程编号否有(无重复)是ScoreTinyInt1课程学分否无否PassOrNotChar2是否及格否无否表44 选课信息表CHOICES五 应用程序的详细设计与实现(一)学生信息管理模块模块的功能学生信息管理模块的主要完成学生信息管理的功能。包括浏览、查找、添加、删除和修改。工作人员根据使用的需要,依靠单击对应的矩形按钮,再单击【确认】按钮实现上述的功能。 浏览功能:工作人员可以直接浏览到第一个记录和最后一个记录,可以从前向后或从后向前逐个浏览每个学生的信息。 查找功能:因为学号和学生是一一对应的关系,所以通过学号可以查找到任何一个学生的信息并显示出来。 添加功能:可以向学生表中添加新的学生信息,系统会自动检查新的学生信息中导师号在导师表中是否存在,确保错误的信息无法进入数据库。 删除功能:删除界面上当前显示的学生信息,系统会弹出确认对话框,提示是否确认删除,在得到确认后,便会删除学生信息,同时系统自动检测当前信息在数据库的其他表中是否使用,如果是,这样删除不安全,系统会提示工作人员当前数据不能删除。 修改功能;实现对当前信息的修改,为安全起见,系统默认学号不能修改,在提交修改后的信息时,系统自动检查导师号是否存在,如果不存在,则修改无效。模块通过【返回】按钮退回到主界面。 模块的工作流程进入学生信息管理模块,系统首先判断数据库中“STUDENTS”表是否为空,若为空,提示工作人员“STUDENTS”表是空的,同时出现界面,但这时只有添加按钮可以有效。其他的按钮都处于无效状态(除了确定、取消和返回按钮);如果“STUDENTS”表不空,则显示“STUDENTS”表中的首信息。单击【查找】按钮,然后输入学生的学号,再单击【确定】按钮,如果该学号存在,则界面更新,显示该学生信息;如果不存在,提示用户“STUDENTS”表中没有该学生。程序流程图如图5-1所示。单击查找输入学号控件更新控件更新提示不存在数据库学号存在? 是 否图5-1 查找程序流程图单击【添加】按钮,然后输入学生的信息,学号和导师号是必添的项目。 Combo Box 只有两个选项:男和女,并在添加时默认为男;添加时间信息时不需要键盘输入,可以通过控件Data Time Picker 选择时间,入学时间和出生年份都默认为当前时间,输入完信息再单击【确定】按钮。如果学号不重复存在,便可时下添加,否则添加无效。程序流程图如图5-2所示。单击添加输入信息学号存在?添加无效添加成功添加无效导师号存在?数据库 是 否 否 是 图5-2 添加程序流程图单击【修改】按钮,然后更改学生的信息,其中学号是不准修改的,修改其他信息后再单击【确定】按钮,这时系统要判断更改后的导师号在导师表中是否存在。如果存在,便实现修改;否则会给工作人员以提示,修改无效。程序流程图如图5-3所示。单击修改输入信息修改成功修改无效数据库导师号存在? 是 否图5-3 修改程序流程图单击【删除】按钮,系统会弹出确认对话框,提示是否确认删除,选择否就终止了删除;在得到确认后,系统会检测该生是否选课了,如果已经选课,这样删除是不完全的,系统会提示其他表正在使用该信息,无法删除;如果没有选课,便会删除该学生信息。程序流程图如图5-4所示。单击删除真的删除?其他表在用?无法删除删除成功数据库没有删除 是 否 是 否图5-4 删除程序流程图上述操作功能如果想中途取消,只需单击【取消】按钮即可;单击【返回】按钮可退回到系统主界面。(二)导师信息管理模块模块的功能导师信息管理模块主要完成导师信息管理的功能。包括浏览、查找、添加、删除和修改。工作人员可以根据使用的需要,依靠单击对应的矩形按钮。再单击【确认】按钮实现上述的功能。浏览功能:工作人员可以直接浏览到第一个记录和最后一个记录,可以从前向后或从后向前逐个浏览每个导师的信息。查找功能:因为导师号和导师是一一对应的关系,所以通过导师号可以查找到任何一个导师的信息并显示出来。添加功能:可以向导师表中添加新的导师信息,系统会自动检查新的导师信息中导师号在导师表中是否存在,确保重复的信息无法进入数据库。删除功能:删除界面上当前显示的导师信息,系统会弹出确认对话框,提示是否确认删除,在得到确认后,便会删除导师信息,同时系统自动检测当前信息在数据库的其他表中是否使用,如果是,这样删除不安全,系统会提示工作人员当前数据不能删除。修改功能;实现对当前信息的修改,为安全起见,系统默认导师号不能修改。模块通过【返回】按钮可退回到系统主界面。模块的工作流程进入导师信息管理模块,系统首先判断数据库中“TEACHERS”表是否为空,若为空,提示工作人员“TEACHERS”表是空的,同时出现界面,但这时只有添加按钮可以有效。其他的按钮都处于无效状态(除了确定、取消和返回按钮);如果“TEACHERS”表不空,则显示“TEACHERS”表中的首信息。单击【查找】按钮,然后输入导师的导师号,再单击【确定】按钮,如果该导师号存在,则界面更新,显示该导师信息;如果不存在,提示用户“STUDENTS”表中没有该导师。程序流程图如图所示。单击【添加】按钮,然后输入导师的信息,导师号是必添的项目。 Combo Box 只有两个选项:男和女,并在添加时默认为男;输入完信息再单击【确定】按钮。如果导师号不重复存在,便可实现添加,否则添加无效。单击【修改】按钮,然后更改导师的信息,其中导师号是不准修改的,修改其他信息后再单击【确定】按钮,便实现修改。单击【删除】按钮,系统会弹出确认对话框,提示是否确认删除,选择否就终止了删除;在得到确认后,系统会检测该导师在学生表中是否使用了,在课程表中是否被使用了,只要在其中一个表中被使用了,这样删除就会不安全,系统会提示其他表正在使用该信息,无法删除;否则的话,便会删除该导师信息。上述操作功能如果想中途取消,只需单击【取消】按钮即可;单击【返回】按钮可退回到系统主界面。(三)课程信息管理模块 模块的功能课程信息管理模块主要完成课程信息管理的功能。包括浏览、查找、添加、删除和修改。工作人员可以根据使用的需要,依靠单击对应的矩形按钮。再单击【确认】按钮实现上述的功能。浏览功能:工作人员可以直接浏览到第一个记录和最后一个记录,可以从前向后或从后向前逐个浏览每个课程的信息。查找功能:因为课程号和课程是一一对应的关系,所以通过课程号可以查找到任何一个课程的信息并显示出来。添加功能:可以向课程表中添加新的课程信息,系统会自动检查新的课程信息中开设课程的导师号在导师表中是否存在,确保错误的信息无法进入数据库。删除功能:删除界面上当前显示的课程信息,系统会弹出确认对话框,提示是否确认删除,在得到确认后,便会删除导师信息,同时系统自动检测当前信息在数据库的其他表中是否使用,如果是,这样删除不安全,系统会提示工作人员当前数据不能删除。修改功能;实现对当前信息的修改,为安全起见,系统默认课程号不能修改,在提交修改后的信息时,系统自动检查开设课程的导师号是否存在,如果不存在,则修改无效。模块通过【返回】按钮可退回到系统主界面。 模块的工作流程进入课程信息管理模块,系统首先判断数据库中“COURSES”表是否为空,若为空,提示工作人员“COURSES”表是空的,同时出现界面,但这时只有【添加】按钮可以有效。其他的按钮都处于无效状态(除了确定、取消和返回按钮);如果“COURSES”表不空,则显示“COURSES”表中的首信息。单击【查找】按钮,然后输入课程号,再单击【确定】按钮,如果该课程号存在,则界面更新,显示该导师信息;如果不存在,提示用户“COURSES”表中没有该课程。单击【添加】按钮,然后输入课程的信息,课程号和导师号是必添的项目。 Combo Box 只有两个选项:学位课和限选课,并在添加时默认为学位课;输入完信息再单击【确定】按钮。如果课程号不重复且导师号存在,便可实现添加,否则添加无效。单击【修改】按钮,然后更改课程的信息,其中课程号是不准修改的,修改其他信息后再单击【确定】按钮,这时系统要判断更改后的导师号在导师表中是否存在。如果存在,便实现修改;否则会给工作人员以提示,修改无效。单击【删除】按钮,系统会弹出确认对话框,提示是否确认删除,选择否就终止了删除;在得到确认后,系统会检测该课程是否在选课表中被选课了,如果已经有学生选了这门课,这样删除是不安全的,系统会提示其他表正在使用该信息,无法删除;如果没有学生选这门而课,便会删除该课程信息。上述操作功能如果想中途取消,只需单击【取消】按钮即可;单击【返回】按钮可退回到系统主界面。(四) 选课信息管理模块 模块的功能选课信息管理模块主要完成选课信息管理的功能。包括浏览、查找、添加、删除和修改。工作人员可以根据使用的需要,依靠单击对应的矩形按钮。再单击【确认】按钮实现上述的功能。浏览功能:工作人员可以直接浏览到第一个记录和最后一个记录,可以从前向后或从后向前逐个浏览每个选课的信息。查找功能:因为学号和课程号同时确定才有惟一的选课能够对应,所以查找时学号和课程号必须同时输入。添加功能:可以向选课表中添加新的选课信息,系统会自动检查新的选课信息中学号和课程号是否存在,确保无效的学号和课程号进入数据库。删除功能:删除界面上当前显示的课程信息,系统会弹出确认对话框,提示是否确认删除,在得到确认后,便会删除选课信息。修改功能;实现对当前信息的修改,为安全起见,系统默认学号和课程号不能修改,在提交修改后的信息时,便可实现修改。模块通过【返回】按钮可退回到系统主界面。 模块的工作流程进入选课信息管理模块,系统首先判断数据库中“CHOICES”表是否为空,若为空,提示工作人员“CHOICES”表是空的,同时出现界面,但这时只有【添加】按钮可以有效。其他的按钮都处于无效状态(除了确定、取消和返回按钮);如果“CHOICES”表不空,则显示“CHOICES”表中的首信息。单击【查找】按钮,然后输入学号和课程号,再单击【确定】按钮,如果该选课存在,则界面更新,显示该选课信息;如果不存在,提示用户“CHOICES”表中没有该选课。单击【添加】按钮,然后输入选课的信息,学号和课程号是必添的项目。 Combo Box 只有两个选项:是和否,并在添加时默认为是;输入完信息再单击【确定】按钮。如果选课不重复且学号和课程号存在,便可实现添加,否则添加无效。单击【修改】按钮,然后更改选课的信息,其中学号和课程号是不准修改的,修改其他信息后再单击【确定】按钮,便实现修改。单击【删除】按钮,系统会弹出确认对话框,提示是否确认删除,选择否就终止了删除;在得到确认后,便会删除该选课信息。上述操作功能如果想中途取消,只需单击【取消】按钮即可;单击【返回】按钮可退回到系统主界面。(五)成绩管理模块 模块的功能成绩查询模块向工作人员提供了关于某一特定对象的成绩查询统计功能,包括具体的详细的成绩信息和统计数字。特定对象可以是学生,也可以是课程。当对象为学生时,系统可提供该生所选的所有课程以及对应成绩,并同时给出统计数字;平均分、选修课和不及格门数。当对象为课程时,系统可以提供选修该课程的所有学生以及对应成绩,并同时给出统计数字;平均分、选修课和不及格门数。模块的工作流程在成绩查询模块中使用了ActiveX控件ADO Data Control 和 DataGrid Control。ADO Data Control 控件用于和数据库连接,通过OLE DB 的数据库访问方式从数据库中获得信息,本系统中使用了两个ADO Data Control 控件,并将其属性的可见性取消,这样在执行程序时 ADO Data Control 控件是看不到的。DataGrid Control 控件把ADO Data Control 控件获得的记录集作为数据源,实现获得信息的显示工作。当工作人员输入学号后,单击【确定】按钮。ADO Data Control 控件从数据库中获得的动态记录集得到确定,然后刷新 DataGrid Control 控件,使确定的记录集信息显示出来,同时很容易给出学生的平均成绩、选修课程数和不及格门数。输入课程号后,单击【确定】按钮,通过另一个 ADO Data Control 控件从数据库中获得记录集,同时刷新 DataGrid Control 控件,使确定的记录集信息显示出来,有了记录集,给出课程的平均成绩、选修人数和不及格人次就轻而易举了。(六)创建主模块工作人员进入研究生信息管理系统首先见到的就是主模块的界面。其他各个模块的源代码要使用主模块的头文件,通过主模块的全局对象theApp,各个模块才得以从数据库中返回记录集体。主模块主要做到以下的: 初始化COM库,引入 ADO 库定义文件; 用 Connection 对象连接数据库; 生成全局对象 theApp.主模块可以进入每一个模块,是各个模块切换和联系的桥梁,主模块的界面力求做到简单友好,对每个矩形按钮的功能都给予了简介。在主模块中可以退出系统。主模块的工作流程十分简单。单击【学生信息】按钮,进入学生信息管理模块;单击【导师信息】按钮,进入导师信息管理模块;单击【课程信息】按钮,进入课程信息管理模块;单击【选课信息】按钮,进入选课信息管理模块;单击【成绩信息】按钮,进入成绩查询模块;单击【退出系统】按钮,就结束了程序。六 结束语经过两个多月的设计和开发,学生成绩管理信息系统基本开发完毕。本小型信息管理系统的开发不仅使我对数据库系统的开发方法和过程有了更进一步的熟悉,而且对与其中主要用到的 ADO对象操纵数据库的技术手段、OLEDB控制控件访问数据库手段以及灵活运用的SQL查询语言,也有了更深层的理解。其功能基本符合用户需求,能够完成学生学籍和导师的基本情况的存储和成绩的查询。并提供部分系统维护功能,使用户方便进行数据修改和数据删除,对于数据的一致性的问题也通过程序进行了有效的解决。但是由于毕业设计时间较短,所以该系统还有许多不尽如人意的地方,比如还没有用户信息管理模块,使得欲进入研究生成绩管理信息系统的使用者需要先登陆用户名和密码,并且可以给不同的用户以不同的权限来访问。用户界面不够美观,出错处理不够等多方面问题。这些都有待进一步改善。 致谢The Achievement Management System for Graduate student based on VC+Abstract: Students achievement administrative system is a typical information management system (MIS ), it develops two respects of main development including setting-up and maintenance and front application program of backstage supporters database . Demand to set up the consistency of the data and integrality the storehouse of strong , data with good security to the former. Require to the latter the function of the application program is complete , apt characteristic of using etc. . So the graduate education current situation of the one that combine the school now in person, to MS SQL Server2000 data base management system , SQL language principle , VC + design program, VC + database technology has carried on the deeper study and application, finish to studying demand analysis , function module dividing , database mode analysis of producing the achievement administrative system mainly, and has designed structure of the database and application program from this. Keywords: SQL language,MS SQL Server,VC + 6.0,Information Management,Dialog.参考文献1 求实科技 王超龙 陈志华。. Visual C+ 6.0 入门与提高 。北京:人民邮电出版社,20022 李闽溟 吴继刚
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 冲裁模具凹模课程设计
- 2026年烟台市初中学业水平考试语文卷附答案解析
- 车削阶梯轴课程设计
- 制氮系统安装调试施工方案及技术措施
- 基于机器阅读理解的事件检测方法研究
- 广告投放强化学习实时优化方案课程设计
- 强化学习广告优化案例课程设计
- 430单片机课程设计
- 配位聚合物及其复合材料的构筑与降解有机污染物性能研究
- 2025广东机场集团产发公司招聘4人进行中笔试历年参考题库附带答案详解
- 2025年阿坝州直遴选笔试真题汇编附答案
- 化工厂夏季安全培训课件
- 四川省引大济岷水资源开发有限公司公开遴选工作人员笔试参考题库及答案解析
- 医疗器械创新培训课件
- 医学伦理学在临床实践中的思考
- 液体活检在肿瘤早筛早诊中的地位
- ai写作与公文写作培训课件
- T/CI 448-2024电动垂直起降航空器通用技术要求
- 高校保密教育培训材料
- 2024江苏省司法警官高等职业学校工作人员招聘考试试题及答案
- 2025四川成都诸葛资本投资有限责任公司招聘高级投资经理等岗位5人考试笔试参考题库附答案解析
评论
0/150
提交评论