学生信息管理系统设计说明书
1 系统设计
在数据库系统开发的先期, 一般要对系统的开发目的、 使用对象、 实现的功能等进行详尽的剖析,确立系统的开发方案。
系统功能剖析 系统功能模块设计 操作流程图
1.1 系统功能剖析
开发目的:
学生信息管理系统的开发目的是管理全校学生的各样信息, 方便学生信息的查问。 系统的使用对象是学生管理部门,如教务处工作人员、校院系领导、班主任、教师等。本章所开 发的系统的主要使用对象是教务处。 主要功能:
学生基本信息的录入,包含:学号、姓名、性别、班级、出诞辰期、籍贯等;学生基本信息的改正保护;
学生学籍改动状况的记录,包含:休学、复学、转系、结业、毕业等;学生赏罚状况的记录和改正,包含:奖赏和处分;学生信息的查问; 院系设置管理,包含院系的增添、改正和删除等; 班级设置管理,包含班级的增添、改正和删除等。
1.2 系统功能模块设计
依据系统所要实现的功能, 依据结构化程序设计的原则, 能够将整个系统区分为若干个功能模块。
学生信息管理方案系统设计说明书介绍
1.3 操作流程图
经过操作流程剖析, 不只好够详细化系统的功能模块的构成, 还能够明确系统中的数据流本程, 明确系统中所要保留的数据以及数据间的关系, 为下一步的数据库设计打好基础。书中采纳以下的符号表示操作流程。
大家对学生信息管理是比较熟习的,所以不难画出右图所示的学生信息管理操作流程
图。需要说明的是各所学校的实质状况可能有所不一样, 同学们能够依据自己学校的实质状况画出切合本校特色的操作流程图。
2 数据库设计
数据库是信息管理系统的基础, 在系统中据有重要的地位,数据库结构能否合理直接关
系到系统功能的实现和运转的效率。 合理的数据库结构设计能够提升数据储存的效率, 保证数据的完好性和一致性,也有益于系统的编程实现。 数据库系统设计一般包含以下几个步骤:
需求剖析; 观点结构设计; 逻辑结构设计; 物理结构设计;
应用程序设计及调试; 性能测试与确认。
2.1 数据库需求剖析
需求剖析是整个数据库设计过程中最重要的步骤之一, 是后继各阶段的基础。 在需求剖析阶段,需要从多方面对整个系统进行检查, 采集和剖析系统对信息和办理两个方面的需求。
采集资料是数据库设计人员和用户共同达成的。 一定重申用户的参加, 这是数据库应用系统设计的特色。采集资料的目的是明确用户的需求。用户的需求主要包含第三个方面: 信息需求,用户要从数据库获得的内容;
学生信息管理方案系统设计说明书介绍
办理需求,即达成什么办理功能以及采纳何种办理方式; 安全性及完好性需求。
剖析的过程是对所采集的数据进行抽象的过程。抽象是对实质事物或事件的人为办理, 抽取共同的实质特色, 忽视细微末节, 并用各样观点进行精准描绘, 这些观点构成某种数据模型。
在上节对学生信息管理系统操作流程剖析的基础上, 能够列出以放学生信息管理系统所需的数据项和数据结构:
院系设置:院系编号、院系名称、院系描绘、院系领导、领导联系方式等;
班级设置:班级编号、班级名称、班级创立时间、班级描绘、所属院系、班主任、班主任联系方式等;
学生基本状况:学号、姓名、性别、出诞辰期、籍贯、所属班级等;学籍更改记录:记录号、学号、更改类型、记录时间、详尽描绘等;奖赏记录:记录号、学号、奖赏类型、记录时间、详尽描绘等;
处分记录:记录号、学号、处分类型、记录时间、详尽描绘等。
2.2 数据库观点结构设计
Module )简称 E-R 图,是描绘观点世界,成立观点模
型的适用工具。 数据库设计工作比较复杂,将现实世界的数据组织成切合详细数据库管理系 统所采纳的数据模型一般状况下不行能一次到位,于 1976 年提出形象的实体-
联系方法。经过绘制E-R 图,能够描绘组织模式,并能够进一步转变为任何一种DBMS所支 持的数据模型。E-R 图有三因素:
实体:用矩形框表示,框内标明实体名称;
属性:用圆角矩形形表示,并用连线与实体连结起来,表示实体的有关属性; 实体间的联系: 用菱形框表示, 框内注明联系名称,并用连线将菱形框与有关实 体连结,在连线上注明联系的种类。
在关系复杂的数据库系统的设计中,E-R 图的设计包含局部 E-R 图设计、综合E-R 图设 计、 E-R 图优化等步骤。本章的学生信息管理系统的功能比较简单,其E-R 图如右图所示。
E-R 模型( Entity-Relationship
2.3 数据库逻辑结构设计
观点结构设计的结果获得一个与计算机、软硬件的详细性能没关的全局观点模式。数据 库逻辑设计的任务是将观点结构变换成特定DBMS所支持的数据库模型。从E-R 图所表示的 观点模型能够变换成任何一种详细DBMS所支持的数据模型。 本系统采纳关系模型,变换的原则是:
每个实体转变成一个关系模式(即数据表),实体的属性就是关系的属性,实体的
学生信息管理方案系统设计说明书介绍
重点字就是关系的重点字;
每个 1: 1 的联系变换成一个关系模式。每个实体的重点字都是该关系模式的候选重点字;
每个 1: n 的联系变换成一个关系模式。多方的实体的重点字是该关系模式的重点字;
每个 m: n 的联系变换成一个关系模式。联系中各实体重点字的组合构成该关系模式的组合重点字;
拥有同样重点字的关系能够归并。
在进行完观点结构的转变此后, 还需要进行规范化办理, 经过模式归并和模式分解, 优化数据逻辑结构,使数据库既能有效减少冗余信息,又能提升数据库的查问、操控性能。
依据学生信息管理系统的E-R 图,经过简单的优化, 能够设计6 个关系模式 (即数据表) 来储存全部的信息。为了操作的简易,系统中DBMS采纳 Access 2000。6 个数据表的结构如 表 1 到 6 所示。
表 1 院系设置信息表( Department )
字段名 DepartID DepartName DepartHead Telephone Description
表 2 班级设置信息表( 字段名
ClassID ClassName DepartID BeginDate Master MasterTel Description
表 3 学生基本信息表( 字段名
StudentID Name Sex ClassID Birthday Native
表 4 学籍更改记录表( 字段名
CID StudentID Change
数据种类 ( 长度 ) 文本( 2) 文本( 20) 文本( 8) 文本( 13)
备注 Class )
数据种类 ( 长度 ) 文本( 6) 文本( 20) 文本( 2) 短日期 文本( 8) 文本( 13)
备注 Student )
数据种类 ( 长度 ) 文本( 8) 文本( 8) 文本( 2) 文本( 6) 短日期 文本( 16)
Change)
数据种类 ( 长度 )
自动编号 文本( 8) 文本( 4)
必添字段 是 是 否 否 否
必添字段 是 是 是 是 否 否 否
必添字段 是 是 是 是 否 否
必添字段 是 是 是 说 明 院系编号(主重点字)院系名称 院系领导
领导联系电话
院系描绘
说 明
班级编号(主重点字)班级名称
所属院系(外重点字)班级创立日期 班主任
班主任联系电话
班级描绘
说 明
学号(主重点字) 姓名 性别 班级编号 出诞辰期 籍贯
说 明
记录号(主重点字)
学号
学籍更改种类
学生信息管理方案系统设计说明书介绍
RecDate Description
短日期 备注 是 否 必添字段 是 是 是 是 否 必添字段 是 是 是 是 否 记录日期 说明
表 5 奖赏记录表( Reward)
数据种类 ( 长度 ) 字段名 RID StudentID Reward RecDate
自动编号 文本( 8) 文本( 20) 短日期 说 明
记录号(主重点字) 学号 奖赏种类 记录日期
备注 Description
表 6 处分记录表( Punish )
数据种类 ( 长度 ) 字段名 PID StudentID Punish RecDate Description
自动编号 文本( 8) 文本( 8) 短日期 备注 奖赏详细说明
说 明
记录号(主重点字) 学号 处分种类 记录日期
处分详细说明
2.4 数据库结构的实现
数据库逻辑结构设计达成此后,就能够在DBMS上创立数据库和数据表了。一般状况下
能够依据 DBMS的 SQL语法成立相应的 SQL语句,有关于直接操作成立数据库而言, 经过 SQL 创立数据库的利处是便于数据库的重复创立。
2.5 初始数据的录入
在某些数据库系统的开发中, 需要录入一些初始据。 在达成数据库的创立此后, 便能够在 DBMS中录入初始数据。本章的数据库中不需要初始数据。
数据库创立完成此后, 还需要对数据库的性能进行一些测试, 以保证数据库设计的合理性,防止在系统软件开发过程中发现数据库不合理而改正数据库。
3 系统主窗体的创立
数据设计达成后,下一步的工作就是使用某种程序开发语言实现系统的详细功能, 采纳的语言为微软企业的中文版Visual Basic 6.0程序开发语言。 本节内容包含以下几个方面:
创立工程文件 ; 主窗体的设计 ; 主菜单设计 ;
部分程序的实现 。
本书
学生信息管理方案系统设计说明书介绍
3.1 创立工程文件
启动 Visual Basic 6.0
,直接单击【翻开】按钮,Visual Basic创立工程文件,并自
动产生一个窗体文件。依据 Visual Basic配置的不一样,有时会出现不一样的运转界面,系统会直接创立新的工程文件。
别的,也能够经过单击【文件】→【新建工程】菜单项来创立工程。
为了结构便于用户操作的程序界面, 需要在工程中增添相应的零件。 单击【工程】 →【零件】菜单项,翻开“零件”对话框,在“控件”选项卡的列表框中将下边所列控件前面的方 框勾选,而后单击“确立”按钮。相应的控件就会被增添到工具箱上。本程序需要增添以下几个零件:
Microsoft Data Bound Grid Control 5.0 (SP3) Microsoft Tabbed Dialog Control 6.0
Microsoft Windows Common Controls-2 6.0
3.2 主窗体的设计
在设计复杂的应用程序时, 为了方便用户的操作, 常常要考虑系统的界面框架结构, 常用的框架结构有 SDI(单文档界面)和 MDI(多文档界面)两种。为简易起见,本例采纳单 文档界面。
翻开主窗体(文件名为 FormMain),设置窗体的有关属性。
属性名
名称 Caption BackColor WindowState
frmMain
学生信息管理系统 &H8000000C& 2 - Maximized
属性值
说 明
主窗体的名称 主窗体标题
主窗体背景颜色 主窗体启动后最大化
3.3 主菜单的设计
单击【工具】→【菜单编写器】菜单项,翻开菜单编写器设计窗体的主菜单。为每个菜 单项取一个比较存心义的名称。 在系统开发时, 应当养成优秀的命名习惯。 介绍使用驼峰式格式, 即每个表记符开头字 母要大写, 内嵌单词的首字母也要大写, 其余字母用小写。在给控件命名时,每个控件名称 前面加上该控件的缩写, 一般取 2~4 个字母, 采纳小写, 缩写时取控件名的主要辅音, 音开头的控件能够取第一个元音字母。本书中全部表记符都采纳这个商定。
菜单项结构
系统保护 (&S)
(&D) (&C)
-
(&Q)
学生管理 (&t)
(&M)
-
(&Q)
菜单项名称 mntSystem mntSysDepart mntSysClass mntSysSP mntSysQuit mntStudent mntStuManage mntStuSP mntStuQuery
说 明
以元
一级菜单( mnt 是 MenuItem 的缩写) 二级菜单项 二级菜单项
二级菜单项,分开线 二级菜单项 一级菜单 二级菜单项
二级菜单项,分开线 二级菜单项
学生信息管理方案系统设计说明书介绍
教务管理 (&E)
mntEduAdmin 一级菜单 (&C) mntEduChange 二级菜单项 (&R) mntEduReward 二级菜单项 (&P)
mntEduPunish
二级菜单项 3.4 部分程序的实现
先实现退出功能。 单击主窗体的 “退出系统” 菜单项,系统自动生成相应事件过程框架,并切换到代码窗口,增添退出过程代码以下:
Private Sub mntSysQuit_Click() End End Sub
主窗体中其余菜单项功能的实此刻后边介绍。
4 院系设置模块
院系设置模块是学生信息管理系统的协助功能模块,实现院系增添、 删除以及院系信息 阅读、改正等功能。
本节内容包含以下几个方面:
模块功能剖析; 窗体的创立;
模块用户界面的设计; 模块功能的实现。
4.1 模块功能剖析
实现思路
在窗体上增添控件和数据控件, 将其余控件与数据控件绑定,就能够实现院系数据的显 示和阅读。 为了便于用户直观阅读院系设置信息,本系统采纳数据表格的形式显示数据。数 据的增添、删除、改正能够经过数据控件和数据绑定控件来实现。
为了考证数据的有效性, 保持数据库的完好性,在增添、删除、改正数据时一定对数据 进行考证,能够在窗体上再增添一个数据控件,经过它查问有关数据表来考证数据。
在增添记录时, 经过字段内容查验来实现域值和非空字段考证,经过对新增添的院系编 号的查问,考证院系编号的独一性(记录层考证)。
在删除记录时,经过查问能否有属于该院系的班级来保证数据的完好性。 实现步骤
增添、保留窗体,设置窗体属性;
增添控件,设置控件属性,结构窗体界面; 编写代码,实现相应功能; 和主窗体连结,测试模块功能。
4.2 主窗体的设计
在 Visual Basic中单击【工程】→【增添窗体】
(或许工具栏的“增添窗体”按钮) ,学生信息管理方案系统设计说明书介绍
给工程增添一个新窗体,将窗体保留为 FormDepartment.frm 。窗体的主要属性设置以下表所示:
属性名 属性值 说 明 名称 Caption BorderStyle StartUpPosition
frmDepartment 院系设置 1 - Fixed Single 1 - 全部者中心
窗体名称 窗体标题
窗体为固定界限,严禁用户改变大小 窗体启动后居于主窗体中央
4.3 模块用户界面的设计
在窗体上增添若干标签、文本框、按钮,并增添一个数据表格控件、两个数据控件。窗
体布局以下列图所示:
此中 dbgDepart 是数据表格控件, 假如看不到该控件, 请参照有关操作。 将该控件绑定 到数据控件上后 (设置该控件的 DataSource 属性),在该控件上单击右键, 选择【 Retrieve Fields 】菜单项, 将数据控件的全部字段绑定到表格上。 再次单击右键, 选择【 Properties 】 此中在 General 选项卡中能够 菜单项, 翻开属性对话框, 对数据表格的各项属性进行设置。
设置表格标题, 去掉 AllowUpdate 选项,以下列图所示, 在 Columns 选项卡中能够设置各列标 题,以下列图所示。 Edit 】菜单项,能够设置数据表格每列的宽度以及行的高 在该控件上单击右键,选择【
去掉 AllowUpdate 选项的目的是 度。别的还能够在字体选项卡中设置表头和数据项的字体。
严禁用户经过数据表格直接改正数据, 进而经过程序代码更好地控制数据的有效性和数据库 的完好性。其余各项的设置能够依据需要设置。 表格控件属性设置:
学生信息管理方案系统设计说明书介绍
4.4 模块功能的实现
通用变量、通用模块定义
本模块在同一个用户界面上实现数据的阅读、增添、删除、改正等功能,为了防止用户 操作不妥而错误改正数据, 在阅读数据时应严禁数据的改正;在增添、 改正数据时同意用户 输入数据并严禁挪动记录集指针,能够设置一个通用过程来实现界面的切换。单击【工具】
→【增添过程】,增添一个名为 ToggleEditMode的私有子过程, 代码以下: 此中 InEditMode 是一个模块级变量, 用于表记用户界面能否处在改正模式。此外还需要定义一个模块级变量 BookMK用于表示数据控件的书签。这两个变量的定义放在模块的通用变量定义部分。
Dim BookMK
Dim InEditMode As Boolean 窗体加载过程
在窗体加载时需要进行初始化办理。第一,为了保证应用程序在任何路径下都能够接见 到数据库,一定改正数据控件的 DatabaseName属性,使其能自动定位到应用程序所在的路径。其次,保证窗体加载时界面处在阅读模式下,不一样意改正数据库中的数据。代码以下:
Private Sub Form_Load()
dataDepart.DatabaseName = App.Path & \"\\Student.mdb\" dataValid.DatabaseName = App.Path & \"\\Student.mdb\" dataValid.Visible = False InEditMode = False ToggleEditMode End Sub
此中 App.Path 表示应用程序运转时所在的绝对路径,本系统中将数据库文件和应用程序的可履行文件放在同一个文件夹下。 窗体加载此后就能够经过数据控件的按钮和数据表格阅读数据库中的数据了。 数据增添功能的实现
数据增添功能比较简单实现,经过数据控件的数据集的 AddNew方法能够增添一条空记录,同时将界面切换到编写模式下供用户输入数据。 为了在操作达成此后数据控件能回到添 加前的记录地点,需要设置数据控件的书签。增添功能的代码以下:
Private Sub cmdAdd_Click()
Else
增添记录 ' BookMK = Null
设置编写模式
End If
切换模式
InEditMode = True' ToggleEditMode' End Sub
数据记录删除功能的实现
记录删除功能经过数据控件的数据集的Delete方法实现。为了保证数据库的完好性,
在删除院系设置记录前应保证数据库中没有属于该院系的班级。 保证数据库的完好性, 一般能够采纳“层级更新 / 级联删除”或许“拒绝操作”的方法,本系统中采纳“拒绝删除”的 方法,同时向用户显示警示信息。
SQL语句
SELECT * FROM Class WHERE DepartID= ’<院系编号 >’用于从班级数据表Class 中选择属于指定院系编号的班级的信息。过程中经过SQL语句 翻开 dataValid数据集,假如数据集不为空则“拒绝删除”,并将属于该院系的班级名称显 示出来。
学生信息管理方案系统设计说明书介绍
注意,在改正了 dataValid 的 RecordSource 属性此后,一定调用 Refresh 方法才能刷新数据集里的数据。记录删除后,需要改正数据集的指针地点,办理可能出现的异样状况。 数据改正功能的实现
调用数据控件的数据集的 Edit 方法能够使数据集处于编写状态, 供用户改正各个字段,同时应将界面切换到编写模式下,并设置好数据控件的书签。
假如用户改正了 Department 数据表中的院系编号,而 Class 数据表中有关班级的院系编号不作改正,数据库的完好性就会受到损坏,这里采纳“拒绝改正”的方法,经过设置
保证数据库的完好性。
,使用户不可以改正院系的编号。这类办理限制了用户的操作,给用户使用造成必定的不便,下一章中将采纳“级联更新”的方法
数据保留功能的实现
增添新记录或许改正记录字段值此后需要保留数据,保留经过调用数据控件的 UpdateRecords 方法实现。保留数据前一定对数据进行有效性考证。 txtDepartID.Locked = True 第一要对用户输入的数据进行规范化办理。这个步骤很重要, 一定保证用户输入的
数据
是有效的。先利用Trim 函数去掉数据前后的剩余空格,而后利用Replace 函数去掉数据中 的非法字符“’”,请思虑为何要去掉字符“’”(提示:“’”会损坏 SQL语句而造成语法错 误)。
其次要对用户输入的数据进行考证,假如用户没有给非空字段输入数据,则提示用户必 须输入该字段,并经过控件的SetFocus 方法直接将焦点定位到该有关控件,便于用户的操 作。
最后在增添新记录的状况下还需要经过数据控件dataValid 考证输入的院系编号能否 独一。判断目前是增添状态仍是改正状态能够经过 txtDepartID 控件的 Locked 属性确立(参考“数据改正功能的实现”)。
5 班级管理模块
班级管理模块实现班级增添、删除以及班级信息阅读、改正等功能。 本节内容包含以下几个方面:
模块功能剖析; 窗体的创立;
模块用户界面的设计; 模块功能的实现。
5.1 模块功能剖析
实现思路
班级管理模块的实现和院系设置模块的实现近似,本模块中需要设置班级所属院系的编 号,为了防备用户输入不存在的院系编号,能够经过将Department 表中全部院系的编号取 出填补到 ComboBox控件中供用户选择来实现。本模块采纳DTPicker 控件来输入班级创立日 期值,保证用户输入的日期是有效日期。 实现步骤
增添、保留窗体,设置窗体属性;
增添控件,设置控件属性,结构窗体界面; 编写代码,实现相应功能; 和主窗体连结,测试模块功能。
学生信息管理方案系统设计说明书介绍
5.2 主窗体的设计
在工程中新建一个窗体,将窗体保留为FormClass.frm。窗体的主要属性设置以下表所 示:
属性名
名称 frmClass BorderStyle
属性值
名称 frmClass 1 - Fixed Single
说 明
名称 frmClass
窗体为固定界限,严禁用户 改变大小 窗体启动后居于主窗体中央 StartUpPosition 1 - 全部者中心
5.3 模块用户界面的设计
在窗体上增添若干标签、文本框、按钮、组合框,并增添一个日期选择框、一个数据表
格控件、两个数据控件。窗体布局以下列图所示:
此中 dtpBeginDate 是日期选择框。 数据表格 dbgClass 的设置能够参照“院系设置模块”中对 dbgDepart 的操作。
5.4 模块功能的实现
通用变量、通用模块定义
为模块增添通用变量 InEditMode 、BookMK和私有过程 ToggleEditMode 。注意日期选择控件没有 Locked 属性,能够使用 Enabled 属性严禁用户操作该控件,严禁操作组合框控件使用 Enabled 属性比较好。
别的再增添一个私有过程 FullDepart ,该过程将 Department 数据表中全部的院系编号增添到 cmbDepart 组合框中供用户选择,过程代码以下:
Private Sub FullDepart()
dataValid.RecordSource = \"SELECT * FROM Department\"
学生信息管理方案系统设计说明书介绍
dataValid.Refresh cmbDepart.Clear
cmbDepart.AddItem dataValid.Recordset(\"DepartID\") Wend End Sub 窗体加 程
和院系 置模 对比, 本模 在窗体加 需要 用 FullDepart 程填补 cmbDepart 合框。代 以下: Private Sub Form_Load()
dataClass.DatabaseName = App.Path & \"\\Student.mdb\" dataValid.DatabaseName = App.Path & \"\\Student.mdb\" dataValid.Visible = False FullDepart
InEditMode = False ToggleEditMode
If cmbDepart.ListCount < 1 Then
MsgBox \" 目前院系 空, 先 行院系 置,而后再 行班 管理!\" cmdAdd.Enabled = False End If End Sub
假如数据 中不存在院系 置数据, 就不允 增添班 。 在系 开 中, 尽量考 到一些 ,使系 更具 用性。
数据保留功能的
合框和日期 框的 稍有不一样, 参照以下的程序片断: If cmbDepart.ListIndex < 0 Then
MsgBox \" 所属院系 号 入不正确 \ 入 \" cmbDepart.SetFocus Exit Sub
ElseIf dtpBeginDate.Value = \"\" Then MsgBox \" 一个入学日期! \ 入 \" dtpBeginDate.SetFocus Exit Sub ⋯ ⋯
其余代 可参照“院系 置模 ” 其余功能的
其余功能和院系 置 似。 了方便用 使用, 在增添 能够将日期 控件的日期 置 用 操作当 的日期,详细可参照以下代 片断:
InEditMode = True ToggleEditMode
dtpBeginDate.Value = Date ⋯ ⋯
6 学生管理模块
学生管理模 学生基本信息的增添、 除、 、改正等功能。本模 的界面布局和事件 理程序 似于前面两个模 , 里只 出界面布局 。
学生信息管理方案系统设计说明书介绍
在删除考证时, 需要分别考证教务管理记录中能否存在该学生的学籍更改、记录。各文本框的 MaxLength 属性应依据数据库中字段的长度设置。
奖赏、处分
7 学生信息查问模块
学生信息查问模块实现对学生信息的查问显示, 励记录、处分记录等教务管理信息。 本节内容包含以下几个方面:
模块功能剖析; 窗体的创立;
模块用户界面的设计; 模块功能的实现。
包含学生基本信息和学籍更改记录、 奖
7.1 模块功能剖析
实现思路
学生基本信息储存在Student数据表中。 Student 数据表中ClassID字段储存着学生所 在的班级的编号,班级名称、班主任姓名、所属院系名称等信息则分别保留在Class 、 Department等数据表中,使用SQL 语句对多个数据表进行关系,能够从多个数据表中提取 相应的数据。 编程时经过将数据控件的数据集种类设置成动向数据集、将数据控件的数据源 设置成 SQL语句来实现。
学生的教务管理记录信息分表保留在Change、 Reward、 Punish 三个数据表中,每个学 生可能对应着多条记录, 所以需要使用主从表的形式, 将全部记录显示出来。因为需要显示 的数据比许多, 为了在有限的窗体界面上显示更多的信息,本模块采纳SSTab控件分页显示 多项数据 。 7.2 主窗体的设计
在 Visual Basic 中单击【工程】→【增添窗体】给工程增添一个新窗体,将窗体保留 为 FormQuery.frm 。窗体的主要属性设置以下表所示:
属性名
属性值说 明
名称
名称 名称
学生信息管理方案系统设计说明书介绍
frmQuery BorderStyle
frmQuery 1 - Fixed Single
frmQuery
窗体为固定界限,严禁用户 改变大小
窗体启动后居于主窗体中央 StartUpPosition 1 - 全部者中心
7.3 模块用户界面的设计
SSTab控件在工具箱窗口的图标为。该控件的功能是分页显示数据,近似于选项卡。在 该控件上单击右键,选择【属性】菜单项,翻开“属性”对话框,能够设置该控件的外观属性,如选项卡个数、各选项卡标题、字体、颜色等。
在每个选项卡上分别搁置一个数据控件和一个数据表格控件,控件名称分别为
dataChange 、dataReward 、dataPunish 和 dbgChange、dbgReward、dbgPunish 。数据控件的 Visible 属性设置为 False ,RecordsetType 属性设置为 1 – Dynaset ,RecordSource 属性在 运 行 时 动 态 设 置 , 为 了 便 于 数据 表 格 控 件 的绑 定 和 设 置 ,可 将 三 个 数 据控 件 的 RecordSource 分别设置为三个表的名称( Change、 Reward 和 Punish )。将三个数据表格分别和三个数据控件绑定, 设置好数据表格的外观属性。 注意, 数据控件和数据表格应当分表搁置在 SSTab控件的三个页面(选项卡)上,不然将不可以达到分页显示的目的。
7.4 模块功能的实现
窗体加载过程
窗体加载过程
在窗体加载的时改正各数据控件的 DatabaseName 属性,使其能自动到应用程序所在的路径下查找数据库文件。代码以下:
Private Sub Form_Load()
dataStudent.DatabaseName = App.Path & \"\\Student.mdb\" dataChange.DatabaseName = App.Path & \"\\Student.mdb\" dataReward.DatabaseName = App.Path & \"\\Student.mdb\" dataPunish.DatabaseName = App.Path & \"\\Student.mdb\" txtStudent.Text = \"\" End Sub 查问功能的实现
学生信息管理方案系统设计说明书介绍
经过文本框的Change 事件响应用户的操作,当用户在
txtStudent控件中输入学号后, 自动在数据库中检索切合条件的记录。
)学生的基本信息的SQL语句为:从多个数据表中查找某个指定学号( txtStudent.Text
SELECT Student.*, ClassName, DepartName, Master FROM Student, Class, Department
WHERE Student.ClassID = Class.ClassID AND Class.DepartID = Department.DepartID AND StudentID='<详细学号 >' 注意: Student 字段为文本型, SQL语句中应当在详细学号前后加引号, 在 VB中应注意SQL字符串的书写。
查找指定学号的学生的学籍变化记录的SQL语句为:
SELECT * FROM Change WHERE StudentID='< 详细学号 >' 奖赏记录和处分记录的查找和学籍变化同样。
8 学籍更改管理模块
学籍更改管理是教务管理的一个构成部分,
本模块实现对学生学籍更改状况的记录、 浏
览、改正、删除等功能。 本节内容包含以下几个方面:
模块功能剖析; 窗体的创立;
模块用户界面的设计; 模块功能的实现。
8.1 模块功能剖析
实现思路
本模块的实现和院系管理、 班级管理、 学生管理等模块的实现近似。 为了便于用户使用,阅读学籍更改记录的同时, 应当将该学生的基本信息显示出来 (近似于学生信息查问模块) ,经过结构主从表能够实现该功能。
8.2 主窗体的设计
在 Visual Basic 中单击【工程】→【增添窗体】给工程增添一个新窗体,将窗体保留 为 FormChange.frm 。窗体的主要属性设置以下表所示:
属性名 属性值 说 明 名称 frmChange BorderStyle
名称 frmChange 1 - Fixed Single
名称 frmChange
窗体为固定界限,严禁用户 改变大小 窗体启动后居于主窗体中央 StartUpPosition 1 - 全部者中心
学生信息管理方案系统设计说明书介绍
8.3 模块用户界面的设计 8.4 模块功能的实现
学籍更改记录的增添、删除、改正、数据阅读等功能的实现能够参照前面各个模块。本 模块中删除记录不会损坏数据库的完好性,不需要进行完好性查验;数据保留时需要对学号 能否存在进行考证。
为了实现主从表功能,当阅读记录或许用户输入学号时,经过文本框txtStudent Change 事件,动向查问该学生的基本信息。代码以下:
Private Sub txtStudent_Change()
strSQL = \"SELECT Student.*, ClassName, DepartName, Master FROMStudent, Class, Department \"
strSQL = strSQL & \" WHERE Student.ClassID = Class.ClassID\" strSQL = strSQL & \" AND Class.DepartID = Department.DepartID\" strSQL = strSQL & \" AND StudentID='\" & txtStudent.Text & \"'\" dataStudent.RecordSource = strSQL dataStudent.Refresh End Sub
在保留数据时需要考证用户输入学号的有效性,假如学号不存在或许非法,那么 dataStudent 的记录集必定为空,利用这一特色能够对学号进行考证。代码以下:
Private Sub cmdSave_Click()
MsgBox \" 查无这人,没法保留!\" Exit Sub End If
dataChange.UpdateRecord InEditMode = False ToggleEditMode
If Len(BookMK) > 0 Then End If End Sub
的
学生信息管理方案系统设计说明书介绍
9 奖赏、处分模块
奖赏、处分管理模块和学籍更改管理模块的功能以及程序代码近似。 界面。
这里只给出模块的
10 系统的编译和刊行 10.1 系统的编译
全部模块设计达成此后,系统的工程窗口应当以下列图所示。
学生信息管理方案系统设计说明书介绍
单击【运转】→【启动】菜单项( 或许按 F5 功能键 ) ,运转程序,输入实验数据,测试 系统的功能,假如有任何问题请检查、改正各项设置和程序代码。
系统目前还只好在Visual Basic 环境下运转,为了使系统能离开Visual Basic 环境独 立运转,一定对系统进行编译。单击【文件】 →【生成 StudentMIS.exe 】菜单项, VisualBasic 生成一个可履行文件StudentMIS.exe,这个文件能够独立于Visual Basic运转了。
10.2 系统的运转测试
将 StudentMIS.exe 和 Student.mdb 复制到随意一个文件夹或许此外的任何一台机器上,双击 StudentMIS.exe ,进行独立运转测试。
在测试系统功能时一定将全部的功能测试到,并测试全部可能出现的操作。 开发者一般 会依据自己的思想定势测试系统, 某些破绽不简单发现, 所以在条件同意的状况下能够请不熟习本系统开发过程的人帮助测试, 尽可能发现程序中的破绽, 以便修理破绽, 完美系统功能。最后还需要请最后用户试用系统,并依据用户的要求调整完美系统的功能。
11 小结
功能完好、 性能稳固的学生信息管理系统开发达成了。经过本章的学习,应当掌握数据 库系统开发的一般步骤,掌握Visual Basic下使用数据控件以及数据绑定控件开发数据库 系统的方法。联合数据库理论,掌握在数据库系统开发中怎样实现数据库的完好性。
在系统开发中, 不只要考虑系统功能的实现,并且要特别着重系统的稳固性,考虑各样
可能致使系统运转异样的因素,并加以清除。别的,还应掌握部分常用控件(如DBGrid 、
DTPicker 、SSTab等)的使用方法。
因篇幅问题不能全部显示,请点此查看更多更全内容