学生信息管理系统课设+VB+SQL备课讲稿.doc
Good is good, but better carries it.精益求精,善益求善。学生信息管理系统课设+VB+SQL-目录1引言12简介22.1VisualBasic简介22.1.1主窗口22.1.2属性窗口32.1.3工程资源管理器窗口32.1.4代码窗口32.1.5窗体布局窗口32.1.6工具箱窗口32.2数据库系统简介32.2.1数据库的基本结构32.2.2数据库的主要特点42.2.3数据库发展阶段大致划分为如下几个阶段52.2.4数据库结构与数据库种类52.3SQL语言介绍62.3.1SQL简介62.3.2SQL语言的数据查询73需求分析83.1提出问题83.2项目开发目标83.3系统的运行环境84系统总体设计94.1系统总体设计框图94.2系统功能模块设计95数据库设计115.1ER模型的设计115.2数据库逻辑结构设计125.3数据库物理设计126系统详细设计146.1数据库及表创建146.2创建工程项目156.3主窗体的建立156.3.1用户登陆模块176.3.2新生注册窗体186.3.3成绩修改窗体196.3.4成绩输入窗体216.3.5学生档案管理216.3.6学生课程管理227系统测试与分析237.1测试实例研究与选择237.2性能分析23结束语24谢辞25参考文献26附录27-1引言学生信息管理系统是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生学生成绩管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件学生成绩,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难1。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生学生成绩信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生学生成绩管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。因此,开发这样一套管理软件成为很有必要的事情。结合上述要求,在基于SQL2000数据库技术以及面向对象的编程技术的基础上,研究了这套学生信息管理系统。该系统可以实现学生基本信息的管理和成绩管理,并可实现多用户登陆。由于时间紧迫、掌握技术有限等条件限制,本系统可能还存在着一些不足之外,敬请老师同学批评指导。2简介2.1VisualBasic简介41991年,美国微软公司推出了VisualBasic(可简称VB),目前的最新版本是VB2008Beta2(VB9)中文版。Visual意即可视的、可见的,指的是开发像Windows操作系统的图形用户界面(GraphicUserInterface,GUI)的方法,它不需要编写大量代码去描述界面元素的外观和位置,只要把预先建立好的对象拖放到屏幕上相应的位置即可。Basic实际上是一个短语的缩写,这个短语就是Beginnersall_purposesymbolicinstructioncode,其中文意思为“初始者通用符号指令代码语言”。VisualBasic6有学习版、专业版和企业版三种版本,以满足不同的开发需要。学习版适用于普通学习者及大多数使用VisualBasic开发一般Windows应用程序的人员,但是;专业版适用于计算机专业开发人员,包括了学习版的全部内容功能以及Internet控件开发工具之类的高级特性;企业版除包含专业版全部的内容外,还有自动化构件管理器等工具,使得专业编程人员能够开发功能强大的组骨子里分布式应用程序。VisualBasic是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发Windows环境下的各类应用程序。它简单易学、效率高,且功能强大可以与Windows专业开发工具SDK相媲美。在VisualBasic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的广泛应用程序接口(API)函数,以用动态链接库(DLL)、对象的链接与世隔嵌入(OLE)、开放式数据连接(ODBC)等技术,可以高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件系统。随着版本的提高,VisualBasic的功能也越来越强。5.0版以后,VisualBasic推出了中文版,与前个版本相比,其功能有了很大提升。2.1.1主窗口与其他的Windows窗口类似,VisualBasic的主窗口也由标题栏、菜单栏、工具栏等项组成。1标题栏标题栏中的标题为“工程1-MicrosoftVisualBasic设计”,说明此时集成开发环境入于设计模式,在进入基他状态时,方括号的文字将作相应的变化。VB有3种工作模式:设计(Design)模式、运行(Run)模式和中断(Break)模式。2菜单栏VisualBasic的菜单栏中除了提供标准的“文件”、“编辑”、“视图”、“窗口”和“帮助”等菜单外,还提供了编程专用的一些功能菜单,如“工程”、“格式“、“调试”、“运行”等,程序开发过程中所需要的命令和功能均包含在这些菜单中。3工具栏工具栏集中了最常用的操作,利用工具栏按钮可以迅速地访问常用的菜单命令。2.1.2属性窗口设置窗体或控件的属性,如颜色、字体、大小等。属性窗口由以下部分组成:(1)对象列表框(2)属性显示排列方式(3)属性列表2.1.3工程资源管理器窗口在该窗口中可以对当前使有的工程中所有部件进行管理,它的主要功能是:添加、删除各个组成部分;在代码和界面设计之间进行切换;宏观地对整个工程进行控制。2.1.4代码窗口代码窗口的主要功能是编辑事件驱动程序及其他代码,它是专门用来进行程序设计的窗口,可在其中显示和编辑程序代码。2.1.5窗体布局窗口窗体布局窗口用于表明程序运行时程序窗口出现的初始位置。2.1.6工具箱窗口刚安装VisualBasic时,它由21个被绘制成按钮的图标构成,显示了各种控件的制作工具。利用这些工具,用户可以在窗体上设计各种控件。2.2数据库系统简介2.2.1数据库的基本结构数据库的基本结构分三个层次,反映了观察数据库的三种不同角度。(1)物理数据层。它是数据库的最内层,是物理存贮设备上实际存储的数据的集合。这些数据是原始数据,是用户加工的对象,由内部模式描述的指令操作处理的位串、字符和字组成。(2)概念数据层。它是数据库的中间一层,是数据库的整体逻辑表示。指出了每个数据的逻辑定义及数据间的逻辑联系,是存贮记录的集合。它所涉及的是数据库所有对象的逻辑关系,而不是它们的物理情况,是数据库管理员概念下的数据库。(3)逻辑数据层。它是用户所看到和使用的数据库,表示了一个或一些特定用户使用的数据集合,即逻辑记录的集合。数据库不同层次之间的联系是通过映射进行转换的。2.2.2数据库的主要特点(1)实现数据共享。数据共享包含所有用户可同时存取数据库中的数据,也包括用户可以用各种方式通过接口使用数据库,并提供数据共享。(2)减少数据的冗余度。同文件系统相比,由于数据库实现了数据共享,从而避免了用户各自建立应用文件。减少了大量重复数据,减少了数据冗余,维护了数据的一致性。(3)数据的独立性。数据的独立性包括数据库中数据库的逻辑结构和应用程序相互独立,也包括数据物理结构的变化不影响数据的逻辑结构。(4)数据实现集中控制。文件管理方式中,数据处于一种分散的状态,不同的用户或同一用户在不同处理中其文件之间毫无关系。利用数据库可对数据进行集中控制和管理,并通过数据模型表示各种数据的组织以及数据间的联系。(5)数据一致性和可维护性,以确保数据的安全性和可靠性。主要包括:安全性控制:以防止数据丢失、错误更新和越权使用;完整性控制:保证数据的正确性、有效性和相容性;并发控制:使在同一时间周期内,允许对数据实现多路存取,又能防止用户之间的不正常交互作用;故障的发现和恢复:由数据库管理系统提供一套方法,可及时发现故障和修复故障,从而防止数据被破坏。2.2.3数据库发展阶段大致划分为如下几个阶段人工管理阶段;文件系统阶段;数据库系统阶段;高级数据库阶段。2.2.4数据库结构与数据库种类2数据库通常分为层次式数据库、网络式数据库和关系式数据库三种。而不同的数据库是按不同的数据结构来联系和组织的。1.数据结构模型(1)数据结构所谓数据结构是指数据的组织形式或数据之间的联系。如果用D表示数据,用R表示数据对象之间存在的关系集合,则将DS(D,R)称为数据结构。例如,设有一个电话号码簿,它记录了n个人的名字和相应的电话号码。为了方便地查找某人的电话号码,将人名和号码按字典顺序排列,并在名字的后面跟随着对应的电话号码。这样,若要查找某人的电话号码(假定他的名字的第一个字母是Y),那么只须查找以Y开头的那些名字就可以了。该例中,数据的集合D就是人名和电话号码,它们之间的联系R就是按字典顺序的排列,其相应的数据结构就是DS(D,R),即一个数组。(2)数据结构种类数据结构又分为数据的逻辑结构和数据的物理结构。数据的逻辑结构是从逻辑的角度(即数据间的联系和组织方式)来观察数据,分析数据,与数据的存储位置无关。数据的物理结构是指数据在计算机中存放的结构,即数据的逻辑结构在计算机中的实现形式,所以物理结构也被称为存储结构。这里只研究数据的逻辑结构,并将反映和实现数据联系的方法称为数据模型。目前,比较流行的数据模型有三种,即按图论理论建立的层次结构模型和网状结构模型以及按关系理论建立的关系结构模型。2.层次、网状和关系数据库系统(1)层次结构模型层次结构模型实质上是一种有根结点的定向有序树(在数学中"树"被定义为一个无回的连通图)。例如图20.6.4是一个高等学校的组织结构图。这个组织结构图像一棵树,校部就是树根(称为根结点),各系、专业、教师、学生等为枝点(称为结点),树根与枝点之间的联系称为边,树根与边之比为1:N,即树根只有一个,树枝有N个。按照层次模型建立的数据库系统称为层次模型数据库系统。IMS(InformationManage-mentSystem)是其典型代表。(2)网状结构模型按照网状数据结构建立的数据库系统称为网状数据库系统,其典型代表是DBTG(DataBaseTaskGroup)。用数学方法可将网状数据结构转化为层次数据结构。(3)关系结构模型关系式数据结构把一些复杂的数据结构归结为简单的二元关系(即二维表格形式)。例如某单位的职工关系就是一个二元关系。由关系数据结构组成的数据库系统被称为关系数据库系统。在关系数据库中,对数据的操作几乎全部建立在一个或多个关系表格上,通过对这些关系表格的分类、合并、连接或选取等运算来实现数据的管理。dBASEII就是这类数据库管理系统的典型代表。对于一个实际的应用问题(如人事管理问题),有时需要多个关系才能实现。用dBASEII建立起来的一个关系称为一个数据库(或称数据库文件),而把对应多个关系建立起来的多个数据库称为数据库系统。dBASEII的另一个重要功能是通过建立命令文件来实现对数据库的使用和管理,对于一个数据库系统相应的命令序列文件,称为该数据库的应用系统。因此,可以概括地说,一个关系称为一个数据库,若干个数据库可以构成一个数据库系统。数据库系统可以派生出各种不同类型的辅助文件和建立它的应用系统。2.3SQL语言介绍2.3.1SQL简介SQL是英文StructuredQueryLanguage的缩写,意思为结构化查询语言,是访问数据库的标准语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。目前,绝大多数流行的关系型数据库管理系统,如Oracle,Sybase,MicrosoftSQLServer,Access等都采用了SQL语言标准。虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select,Insert,Update,Delete,Create,以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作1。SQL语言是一种非过程化语言,它一次处理一个记录集合,对数据提供自动导航。SQL语言允许用户在高层的数据结构上工作,而不对单个记录进行操作。SQL语言不要求用户指定数据的存取方法,而是使用查询优化器,由系统决定对指定数据存取的最快速手段。当设计者在关系表上定义了索引时,系统会自动利用索引进行快速检索,用户不需知道表上是否有索引或者有什么类型的索引等细节。SQL语言可以完成许多功能,例如:(1)查询数据;(2)在数据库表格中插入、修改和删除记录;(3)建立、修改和删除数据对象;(4)控制对数据和数据对象的存取;(5)确保数据库的一致性和完整性等。2.3.2SQL语言的数据查询使用数据库的目的是为了有效地管理数据,而数据的插入、删除和修改则是必不可少的功能。在本系统中就大量地使用了数据插入、删除和修改这三种操作,现在对它们做一个简单地介绍1。(1)数据插入往数据库的基本表中插入数据使用的是INSERT语句,其方式有两种:一种是元组值的插入,另一种是查询结果的插入。在本系统中使用的是前一种方式,其句法如下:INSERTINTO基本表名(列表名)VALUES(元组值)(2)数据删除从数据库的基本表中删除数据使用的是DELETE语句,其句法如下:DELETEFROM基本表名WHERE条件表达式(3)数据修改当需要修改基本表中元组的某些列值时,可以用UPDATE语句实现,其句法如下:UPDATE基本表名SET列名=值表达式,列名=值表达式WHERE条件表达式3需求分析3.1提出问题数据库是一门研究数据管理的技术,始于20世纪60年代,经过40多年的发展,现在已经形成了理论体系,成为计算机软件的一个重要分支。数据库技术体现了当代先进的数据管理方法,使计算机的应用真正渗透到国民经济各个部门,在数据处理领域发挥着越来越大的作用。 随着社会的发展和经济时代的到来,管理信息系统在各行各业都占据着越来越重要的地位,特别是教育事业。在经济发达的国家,许多教育机构(如公办、私立、培训机构等),都投入了大量的资金开发MIS系统,以求在将来激烈的竞争中立于不败之地。因此,开发一套能够为此提供规范化的事务管理、充足的信息和快捷的查询手段的学生信息管理系统是非常必要的。3.2项目开发目标学生信息管理系统是面向教育部门的学生管理事务,包括学生基本信息管理,学生成绩管理等工作,是利用计算机进行集中管理而开发的系统。该系统是以SQL2000为后台数据库进行开发的毕业生就业管理系统,力求与实际相结合具有查询、管理等功能,使教育的管理趋于计算机化,使之更加方便、快捷以提高工作效率。根据学生信息管理的需求和特点,该系统实施后,应达到以下目标:(1)灵活地运用表格输入数据,使信息传递更快捷;(2)系统采用人机对话方式,界面美观友好、数据存储安全可靠;(3)键盘操作,快速响应;(4)实现各种信息的添加、删除、修改、查询等;(5)系统运行稳定、安全可靠。3.3系统的运行环境此系统,代码使用VB语言编写,数据库管理系统采用SQL2000数据库管理系统,运行在Windows98/ME/2000/XP系统下。4系统总体设计4.1系统总体设计框图毕业生就业管理系统实现了对用户的管理、系别信息的管理、学生基本信息的管理、学生就业信息的管理、招聘单位信息的管理等功能。总体设计框图如图4.1所示。学生信息管理学生信息添加学生信息修改学生信息删除学生信息查询学生成绩管理学生成绩添加学生成绩修改学生成绩删除学生成绩查询课程信息管理课程信息添加课程信息修改课程信息删除课程信息查询用户信息管理用户信息添加用户密码修改学生信息管理系统图4.1系统设计框图4.2系统功能模块设计系统功能包括可视化窗口,对各种信息的添加、修改、删除和查询等具体功能如图4.2所示。学生信息管理系统学生成绩管理学生信息管理课程信息管理用户信息管理图4.2系统功能模块5数据库设计5.1ER模型的设计毕业生就业管理系统概念结构设计是在系统的需求分析、数据流程图和数据字典基础上的抽象,结合联系ER模型的设计方法,进行如下概要结构设计。为了使ER图表示得更加清晰,将E-R图分成实体属性ER图及实体联系ER图。(1) 用实体及其属性的部分ER图表示数据库系统的概念模型。学生信息实体ER图,如图5.1所示:学生信息实体学号姓名性别年龄系别图5.1学生信息ER图班级信息实体ER图,如图5.2所示:学生成绩实体学号课程号成绩图5.2学生成绩ER图班级信息实体ER图,如图5.3所示:课程信息实体课程号课程名先行课学分图5.3课程信息ER图用户名图5.4学生成绩ER图用户信息实体密码用户实体ER图,如图5.4所示:(2)用实体及其联系的部分ER图表示数据库系统的概念模型,实体之间ER图,如图5.5所示:1n所属11学生考试选修课程mn成绩图5.5实体之间关系ER图5.2数据库逻辑结构设计3逻辑设计的目的是把概念数据模型转化为数据库管理系统可以处理的逻辑模型。也即将由ER图表示的概念模型转换为DBMS通用的逻辑模型,如关系模型,然后对其进行优化。以关系模型为目标的逻辑结构设计方法是将ER实体图中概念模型映射为关系模型,并且包括一组关系定义,映射的步骤如下:(1)把ER实体图中的每个实体变换为一个关系模型。(2)变换每个关系:多对多模型需要加一个单独的关系模型;而一对一的或者一对多的联系可用在实体中增加属性(此处为外键)来模型化。(3)ER图中的属性可转换为关系的属性。5.3数据库物理设计系统中的数据表如下所示:(1)系统用户数据表(用户表)记录系统所有用户名和密码信息,表中的各个字段以及各个字段的说明如表5.1所示:表5.1用户表结构字段名称数据类型字节数说明用户名文本6主键密码文本6非空(2)学生信息表记录学生学号、姓名等基本信息,表中的各个字段以及各个字段的说明如表5.2所示:字段名称数据类型字节数说明学号文本9主键姓名文本10允许空性别文本2允许空年龄数值4允许空系别文本20允许空字段名称数据类型字节数说明学号文本6主键课程号文本4主键成绩数值4允许空表5.2学生信息表结构(3)学生成绩表记录学生学号、课程号及相关的成绩,表中各个字段以及各个字段的说明如表5.3所示:表5.3学生成绩表结构(4)课程信息表记录课程号、课程名等相关信息,表中各个字段以及各个字段的说明如表5.4所示:字段名称数据类型字节数说明课程号文本4主键课程名文本20允许空先行课文本4允许空学分数值2允许空表5.4成绩信息表6系统详细设计6.1数据库及表创建启动SQL2000Server,右击“数据库”点击“新建数据库”,在弹出的“数据库属性”对话框中可键入数据库名及其它其它信息,如图6.1所示:图6.1新建数据库数据库创建完毕后,点击可打开。右击“表”选择“新建表”,可以进行表的创建以及进行相关的表属性设置,如图6.2所示:图6.2新建表(1) 创建完表后右击对应表名“打开表”“返回所有行”,可对表进行添加、修改、插入、删除等相应编辑操作,如图6.3所示:图6.3设计表62创建工程项目图6.4VB6.0界面启动VB6.0,出现VB6.0运行界面,如图6.4所示:(2) 点击“文件”“保存工程”保存当前工程文件。6.3主窗体的建立图6.5工程主窗体在VB程序设计中,主界面负责应用程序的主界面,由它调用其它模块。因此,主界面应该具有操作性好、界面清晰、使用户能够很方便地找到所需功能的特点。本系统的主界面部在相应的系统菜单组成,用户只需要点击相应的菜单使可调出对应的系统模块。相应代码:PrivateSubchangecj_Click()Form6.ShowEndSubPrivateSubcjshuru_Click()Form7.ShowEndSubPrivateSubdispcj_Click()Form5.ShowEndSubPrivateSubexit_Click()EndEndSubPrivateSubnewuser_Click()Form11.ShowEndSubPrivateSubnewusr_Click()Form10.ShowEndSubPrivateSubstucase_Click()Form3.ShowEndSubPrivateSubxskcgl_Click()Form9.ShowEndSubPrivateSubxueshendagl_Click()Form8.ShowEndSubPrivateSubxueshengcx_Click()Form4.ShowEndSub6.3.1用户登陆模块本模块共有三个部分组成:用户登陆窗体、密码修改窗体、新用户注册窗体。用户登陆窗体主要由文本框及命令按钮组成,利用Adodc控件及DataGrid控件实现程序代码与SQL数据的连接(如图6.6所示)。用户键入用户名及密码后点击“确定”按钮系统会通过上述两个控件与数据库进行连接并进行数据的比较,如果存在该用户及密码正确则会进行系统跳转进行主控制界面,否则会提示用户出错,重新输入用户名及密码,次数无限制。默认用户名为:admin,默认密码为:123456图6.6用户登陆窗口密码修改窗体及新用户注册窗体及登陆窗体的控件组成大致相同,这里不再详述。用户登陆代码:DimusernameAsString,userpassAsStringPrivateSubCommand1_Click()Adodc1.Recordset.MoveFirstAdodc1.Recordset.Find("userID='"&Text1&"'")IfAdodc1.Recordset.EOFThenMsgBox"无此用户,请重新输入!"ExitSubElseabc=Adodc1.Recordset.Fields(1)IfText2=Trim(abc)ThenMsgBox"欢迎使用本系统,点击进入!",vbOKOnly,"登陆"Me.HideForm2.ShowElseMsgBox"用户名或密码不正确,请重新输入!"Text1=""Text2=""ExitSubEndIfEndIfEndSubPrivateSubCommand2_Click()EndEndSub6.3.2新生注册窗体图6.7新生注册窗口点击“新生注册”“学生档案”可打开本窗体,本窗体专门为新生注册使用。通过ADODC控件实现本窗体与数据库学生表的连接,文本框默认不可编辑,用户点击“添加记录”按系统提示可自动完成添加。如图6.7所示对应代码:PrivateSubCommand1_Click()Adodc1.Recordset.AddNewText1=InputBox("请输入学生学号","添加学号")Text2=InputBox("请输入学生姓名","添加姓名")Text3=InputBox("请输入学生性别","添加性别")Text4=InputBox("请输入学生年龄","添加年龄")IfNotIsNumeric(Text4)ThenMsgBox"请输入数值"Text4.SetFocusEndIfText5=InputBox("请输入学生系别","添加系别")resu=MsgBox("确认添加到数据库",vbOKCancel,"确认添加")Ifresu=vbOKThenAdodc1.Recordset.UpdateElseAdodc1.Recordset.DeleteEndIfEndSubPrivateSubCommand2_Click()Me.HideForm2.ShowEndSub6.3.3成绩修改窗体图6.8成绩修改窗体本窗体通过ADODC控件连接数据库的成绩表,默认条件下文本都不可编辑,用户可以点击上一条、下一条进行表的浏览操作。点击“确认修改记录”按钮,成绩文本框变为可编辑状态,用户根据系统提示可完成记录修改操作。如果键入的成绩小0,则系统提示出错,并自动将出错成绩重置为60分。相应代码:PrivateSubAdodc1_MoveComplete(ByValadReasonAsADODB.EventReasonEnum,ByValpErrorAsADODB.Error,adStatusAsADODB.EventStatusEnum,ByValpRecordsetAsADODB.Recordset)Adodc1.Caption=Adodc1.Recordset.AbsolutePosition&"/"&Adodc1.Recordset.RecordCountEndSubPrivateSubCommand1_Click(IndexAsInteger)SelectCaseIndexCase0Adodc1.Recordset.MoveFirst'第一条Case1Adodc1.Recordset.MovePrevious'上一条IfAdodc1.Recordset.BOFThenAdodc1.Recordset.MoveFirstCase2Adodc1.Recordset.MoveNext'下一条IfAdodc1.Recordset.EOFThenAdodc1.Recordset.MoveLastCase3Adodc1.Recordset.MoveLast'最后一条Case4DimmnoAsStringmno=InputBox("请输入学号","查找窗")'将输入值存到变量内Adodc1.Recordset.MoveFirst'移动记录指针到第一条记录上Adodc1.Recordset.Find("sno='"&mno&"'")'用.Find方法查找指定科目IfAdodc1.Recordset.EOFThenMsgBox"无此学号!"&Adodc1.Recordset.AbsolutePosition,"提示"EndSelectEndSubPrivateSubCommand2_Click()Adodc1.Recordset.UpdateEndSub6.3.4成绩输入窗体图6.9添加成绩窗体本窗体通过控件与文本框与数据库成绩表实现连接,文本框默认不可编辑,但可以实现成绩的浏览功能。用户点击“添加成绩”按钮,按照系统提示可完成成绩的添加操作。由于成绩表已经与学生表以及课程表建立了完整性约束,所以如果用户键入的学号或者课程号不存在则将会提示用户出错,并且重新输入。6.3.5学生档案管理图6.10学生档案管理本窗体通过ADODC控件连接数据库的学生表,可以实现对学生档案的添加、删除、修改、查询以及浏览操作。控件在程序运行时不可见,但却必不可少。用户点击上一条、下一条可以实现记录的浏览,且内容不可编辑。查询记录时,只有查询条件及查询内容都有修改的时候,查询按钮才可用,否则不可用。修改或者删除记录选项与确定按钮相连接,由于采用单选按钮,故某一时刻只能实现某一种操作。执行该操作时记录内容不可编辑。6.3.6学生课程管理图6.11学生成绩管理本窗体通过ADODC控件连接数据库的课程表,可以实现对课程系统的添加、删除、修改、查询以及浏览操作。控件在程序运行时不可见,但却必不可少。用户点击上一条、下一条可以实现记录的浏览,且内容不可编辑。查询记录时,只有查询条件及查询内容都有修改的时候,查询按钮才可用,否则不可用。修改或者删除记录选项与确定按钮相连接,由于采用单选按钮,故某一时刻只能实现某一种操作。执行该操作时记录内容不可编辑。7系统测试与分析软件测试是为了发现错误而执行程序的过程,其目的在于以最少的时间和人力系统地找出软件中潜在的各种错误和缺陷。测试主要是由人而不是由机器执行,因而存在心理学的问题。7.1测试实例研究与选择由于软件错误的复杂性,软件测试需要综合应用测试技术,软件测试步骤为单元测试、集成测试、确认测试和系统测试。单元测试是对源程序中每一个程序单元进行测试,检查各个模块是否正确实现了规定的功能,从而发现模块在编码中或算法中的错误。该阶段涉及编码和详细设计的文档。各模块经过单元测试后,将各模块组装起来进行集成测试,以检查与设计相关的软件体系结构的有关问题。确认测试主要检查已实现的软件是否满足需求规格说明书中确定的各种需求。系统测试将已确定的软件与其他系统元素(如硬件、其他支持软件、数据和人工等)结合在一起进行测试。本系统是管理系统,主要是从数据库中读取数据,因而测试的实例主要是实现与数据相关的各种操作。应用白盒测试法中的语句覆盖方法使得程序中的每条语句都执行一次。7.2性能分析测试过程中发现了不合适或不相容的类型说明;有的变量无初值;有的变量初始化或缺省值有错;有的变量名不正确的(拼错或不正确地截断);出现上溢、下溢和地址异常等问题,并逐个予以解决,保证了临时存储在模块内的数据在程序执行过程中完整、正确。本系统长时间不间断连续运行不会出现错误,系统不会出现系统故障,不会出现严重的错误,并且由于有较高的容错技术,能较快的纠正意外错误,使系统稳定可靠。本系统能够准确,快速的处理学生信息管理的操作事务,能够满足管理者的需求,并大大减少了教务管理者的信息查询及维护的麻烦,实现日常处理计算机化,使系统简单实用。系统程序代码中设计了判断语句,用来判断操作错误时弹出报错对话框,在系统中设置了权限判断,使数据具有一定的保密性,增加了系统的安全性。本系统的功能还不是很完善,系统的界面设计的还有些简单,样式还不是特别美观,有待于进一步设计;系统设计中后台数据库应用SQLserver,结合VB程序设计使操作更简单,理解更方便。经过系统的性能测试得出,本系统虽然有一定的缺陷和限制,但本系统的具体功能能够完整实现,所以本系统可以投入到现实应用中。8结束语本次课程设计是我第一次系统的、完整的接触软件设计的过程。我做的是学生信息管理系统。在这次课程设计中,我体会很深,也学会了很多东西,懂得很多以前不懂的东西,也明白了一些事情。通过此次数据库的课程设计,真正达到了学与用的结合,增强了对数据库方面应用的理解,对自己今后参与开发数据库系统积累了不少经验,在实验过程中,从建立数据开始,对数据库设计理念及思想上有更高的认识,从需求分析,到概念设计和逻辑设计,E-R图的表示,数据字典的创建,懂得了不少有关数据库开发过程中的知识,在实验中建表,及其关系模式,关系代数的建立及理解,将SQL语言的查询语句用得淋漓尽致,增强了自己在数据库中应用SQL语言的灵活性,其中包括插入、删除、修改、查询,牵涉表和表之间的联系,主建与外键的定义,约束项的设置,使逻辑更严密,在学习过程中,我也上网查了不少资料,也看了一些别人设计的图书馆管理信息系统的设计报告,学以致用,自我创新,独立完成了这份自己的报告,从学到用,从用又到学,不断修改,系统更新。在本系统的开发过程中,由于我是初次开发软件,在知识、经验方面都存在着不足。另外,在整个开发的过程中,时间也比较仓促。因此,该系统必然会存在一些缺陷和不足。管理系统存在着很多不足,但其功能全面、易于日后程序更新、数据库管理容易、界面友好、操作方便、效率高、安全性好等优点是本管理系统所必需的。相信本学生管理系统是一套学校在日常管理中必不可少的管理软件,通过开发这个系统,了解了基本知识巩固了我对VisualBasic6.0的学习,但在这次毕业设计中的最大收获并不是掌握这几门开发工具的应用,而是学会了设计系统的思维方法,以及与同学们之间相互帮助的精神。课程设计结束了,但我不会忘记在这次课程设计中我所得到的。我深深的体会到了这几句话:认真做事只是把事情做对,用心做事才能把事情做好。把每一件简单的事情做好就是不简单,把第一件平凡的事情做好就是不平凡。在以后的学习中我会不断的在实际中应用这几句话,我要不断的总结,不断的改进,不断的努力,使自己的成绩提高。谢辞在将近一周的课程设计里,首先我很感谢马桂英老师的悉心指导。在整个设计过程中,马老师给了我很多的指导和支持,才使得些次设计圆满结束。在此,真诚的对马老师说一声:“谢谢,老师,您辛苦了”。此次设计的顺利完成还要感谢给予我帮助的同学们,我们讨论所遇到的问题,并一起解决。在讨论中解决问题,并且在交流的过程中,我们也可以学到更多的东西。通过这次课设让我学到许多。在学习专业课的时候要注意理论联系实际。注意将课本上的知识应用到日常的操作中,真正做到学以致用。只有这样,才能做到目的明确,才能有足够的学习动力。课程设计已经结束了,这次课程设计带给自己很多体会,在以后的学习中要不断总结,不断改进,使自己的成绩有新的提高。参考文献1萨师煊,王珊,数据库系统概论,高等教育出版社,2002,2:1-1502张来寅,谭明勇,数据库系统原理与应用,冶