教务系统数据库总结报告.docx

上传人:b****1 文档编号:988601 上传时间:2023-04-30 格式:DOCX 页数:24 大小:1.67MB
下载 相关 举报
教务系统数据库总结报告.docx_第1页
第1页 / 共24页
教务系统数据库总结报告.docx_第2页
第2页 / 共24页
教务系统数据库总结报告.docx_第3页
第3页 / 共24页
教务系统数据库总结报告.docx_第4页
第4页 / 共24页
教务系统数据库总结报告.docx_第5页
第5页 / 共24页
教务系统数据库总结报告.docx_第6页
第6页 / 共24页
教务系统数据库总结报告.docx_第7页
第7页 / 共24页
教务系统数据库总结报告.docx_第8页
第8页 / 共24页
教务系统数据库总结报告.docx_第9页
第9页 / 共24页
教务系统数据库总结报告.docx_第10页
第10页 / 共24页
教务系统数据库总结报告.docx_第11页
第11页 / 共24页
教务系统数据库总结报告.docx_第12页
第12页 / 共24页
教务系统数据库总结报告.docx_第13页
第13页 / 共24页
教务系统数据库总结报告.docx_第14页
第14页 / 共24页
教务系统数据库总结报告.docx_第15页
第15页 / 共24页
教务系统数据库总结报告.docx_第16页
第16页 / 共24页
教务系统数据库总结报告.docx_第17页
第17页 / 共24页
教务系统数据库总结报告.docx_第18页
第18页 / 共24页
教务系统数据库总结报告.docx_第19页
第19页 / 共24页
教务系统数据库总结报告.docx_第20页
第20页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

教务系统数据库总结报告.docx

《教务系统数据库总结报告.docx》由会员分享,可在线阅读,更多相关《教务系统数据库总结报告.docx(24页珍藏版)》请在冰点文库上搜索。

教务系统数据库总结报告.docx

教务系统数据库总结报告

教务系统数据库总结

一.概述

1.1开发背景

现如今学校招生越来越多,必然就会有大量的学生信息需要处理。

如果只靠人力来完成,这将会变成一项非常繁琐、复杂的工作,而且还会出现很多意想不到的错误,给管理这些数据带来了很大的不便,也越来越不适合学校发展的需要。

教务管理系统是一个庞大而复杂的系统,它包括对院系资料的管理,对课程资料的管理,对学生资料的管理和对学生成绩的管理等等主要的功能。

教务管理系统是每个学校的一项必不可少的内容,它的好坏直接影响到学校里的主要工作,一旦此系统瘫痪,学校将会受到非常严重的损失,也会影响到每一个学生。

所以现如今设计一个功能完整、操作简单以及界面友好的教务管理系统变得非常重要。

为了提高教务管理工作的效率,减少错误的出现,节约大量的人力资源,现在的学校的教务管理也逐步从手工转到计算机自动化信息处理阶段。

通过这个系统,用户可以方便的对院系资料、课程资料、学生资料和学生成绩资料进行添加、修改和删除操作,还可以对学生资料和成绩进行查询操作。

除此之外,对用户的添加和删除操作也很方便。

1.2开发环境简介

系统平台:

Windowsxp

数据库服务器:

MicrosoftSQLServer

二.需求分析

2.1功能需求

这次开发的教务管理系统大大提高了学校管理工作的效率,使用户能够方便的对院系信息、课程信息、学生信息以及成绩信息进行管理。

本系统对具有不同权限的用户所开放的功能是不同的,最高级用户的权限是“管理员”,它能使用系统的所有功能,另一种用户的权限是“用户”,它只能使用系统的部分功能。

不同权限的用户能使用的功能如下:

用户管理:

此项功能只能由管理员使用

修改密码:

管理员和用户都能使用

信息管理:

包含了系别管理、学生管理、课程管理、成绩管理四个模块,只能由

管理员使用,用户不能使用。

学生资料查询:

只能由管理员使用,用户不能使用

学生成绩查询:

管理员和用户都能使用

2.2模块划分

本系统并不复杂,模块划分也比较清楚。

通过对不同的功能进行分析,就可以得到系统的模块划分。

(1)登录管理模块:

为了保证系统的安全性,可以根据不同的用户权限来提供不同的服务。

分为管理员登录和用户登录两个子模块。

(2)系统管理模块:

分为用户管理和修改密码两个子模块。

其中用户管理子模块又包含了添加用户和删除用户两部分。

(3)信息管理模块:

对各基本表进行管理。

分为系别管理、学生管理、课程管理和成绩管理四个子模块。

每一个模块又包含添加、修改和删除三个部分。

(4)信息查询模块:

在各基本表的基础上进行信息查询。

分为学生资料查询和学生成绩查询两个子模块。

(5)帮助模块:

分为关于系统和关于作者两个子模块。

与之对应的模块划分(图一)如下所示:

图一:

模块划分图

2.3系统的窗体命名约定如表一所示:

表一:

各窗体的命名约定

窗体

窗体名称

窗体实现的功能

LoginForm1

登录窗口

作为用户登录系统的窗口

FrmMain

教务管理系统

系统的主界面,列出所有的功能

FrmUser

用户管理

对用户的信息进行管理

FrmPasswordCharge

修改密码

用户可以在此修改密码

FrmDepartment

系别管理

对院系的信息进行管理

FrmCourse

课程管理

对课程的信息进行管理

FrmStudent

学籍管理

对学生的基本信息进行管理

FrmGrade

成绩管理

对学生的成绩进行管理

FrmStuQuery

学生资料查询

对学生的基本信息进行查询

FrmGradeQuery

学生成绩查询

对学生的学习成绩进行查询

FrmAboutSysterm

关于系统

简单介绍了此系统的主要功能

FrmAboutAuthor

关于作者

给出了作者的主要信息

三.设计内容

3.1数据库设计

由用户的需求分析和概念结构设计,最终设计了名为教务管理数据库的数据库,数据库中的表如下所示:

表1:

登录信息表

记录号

字段名称

数据类型

字段大小

属性(是否可为空)

1

用户名

text

16

2

密码

text

16

3

权限

text

16

表2:

系别信息表

记录号

字段名称

数据类型

字段大小

属性(是否可为空)

1

系编号

int

4

主键

2

系名

nvarchar

50

3

系主任

nvarchar

50

表3:

学生信息表

记录号

字段名称

数据类型

字段大小

属性(是否可为空)

1

学生编号

char

10

主键

2

学生姓名

nvarchar

50

3

学生性别

char

10

4

年龄

int

4

5

身份证号

nvarchar

50

6

所在系

nvarchar

50

表4:

课程信息表

记录号

字段名称

数据类型

字段大小

属性(是否可为空)

1

课程编号

Int

4

主键

2

课程名

nvarchar

50

3

任课老师

nvarchar

50

4

课程学分

float

8

5

开课院系

nvarchar

50

6

课程简介

nvarchar

16

表5:

成绩信息表

记录号

字段名称

数据类型

字段大小

属性(是否可为空)

1

学生编号

char

10

主键

2

课程编号

Int

4

主键

3

平时成绩

char

8

4

考试成绩

char

8

3.2系统中主要功能实现

(1)登录界面的设计

本系统的登录界面上主要有用户名、密码和用户权限三部分内容。

用户若想进入系统,就必须给出正确的用户名和密码,而且要选择正确的用户权限。

如果用户输入的用户名不存在或者密码与用户名不一致或者与用户权限不一致,都会给出相应的提示信息,告诉用户出现的错误输入。

而且,如果用户进行错误的输入超过三次时,系统会自动退出。

实现这一功能的说明如下:

函数开始:

建立连接,利用Fill()函数在Systerm.Data.DataSet的指定范围中添加或刷新行,以与使用Systerm.Data.DataSet名称中的数据源中的行相匹配。

OleDbDataAdapter1.Fill(dt)

利用For循环,判断循环次数是否小于所有记录的个数

Fori=0Todt.Rows.Count-1

If(用户名、密码和用户权限三者匹配时)Then

Me.Hide()

Me.Finalize()

Me.AddOwnedForm(myform)

显示主窗体

If(用户权限=用户)Then

隐藏主窗体中的部分功能

myform.系统用户管理ToolStripMenuItem.Enabled=False

myform.教务信息管理ToolStripMenuItem.Enabled=False

myform.学生资料查询ToolStripMenuItem.Enabled=False

Else

什么也不做

EndIf

退出For循环

EndIf

Next

If(i>=dt.Rows.Count即在所有记录中都没有找到与用户输入的值相同的)Then

说明在所有记录中都没有找到与之匹配的用户名、密码和用户权限Then

弹出MsgBox,警告用户出现错误

MsgBox("用户名与密码与用户权限不匹配!

请验证后重新输!

",MsgBoxStyle.Exclamation,"警告")

将密码对应的文本框中的内容置空

EndIf

If(重复输入的次数超过3次)Then

弹出弹出MsgBox,警告用户出现错误

MsgBox("你输入的次数已经超过了3次!

系统将退出!

",MsgBoxStyle.Exclamation,"警告")

退出

EndIf

函数结束

(2)信息管理模块的设计:

信息管理模块的三种操作,主要是添加记录,修该记录,删除记录三大功能。

而且在执行各项功能时都会给出足够的提示信息,例如进入时的提示信息,有些信息不能为空的提示,以及操作成功的提示信息。

(a)下面以系别管理模块中添加院系来说明如何添加记录的,说明如下:

函数开始:

添加记录时给出提示信息,等待用户确认

S=MsgBox("您确定要增加记录吗?

",36,"提示")

If(S<>6即用户选择的是取消按钮)Then

退出函数

EndIf

If(系名对应的文本框为空)Then

MsgBox("系名不能为空!

")

退出函数

EndIf

If(系主任对应的文本框为空)Then

................

ElseIf(S=6即用户选择的是确定按钮)Then

利用count()函数来返回所有记录的个数

然后让个数加1作为下一个记录的编号

i=Me.BindingContext(DataSet1,"系别信息").Count+1

新建一个表示内存中数据的一个表tmptable

tmptable=DataSet1.Tables("系别信息")

打开连接

OleDbConnection1.Open()

构造插入语句

DimtmpcommandAsNewSystem.Data.OleDb.OleDbCommand("insertinto系别信息(系编号,系名,系主任)values('"&i&"','"&TextName.Text&"','"&TextMan.Text&"')",OleDbConnection1)

异常处理

Try

tmpcommand.ExecuteNonQuery()

CatchfillExceptionAsSystem.Exception

MsgBox("获得错误信息:

"&fillException.Message)

EndTry

将数据集中的记录清空

DataSet1.Clear()

将更改后的所有记录在填入数据集

OleDbDataAdapter1.Fill(DataSet1,"系别信息")

关闭连接

OleDbConnection1.Close()

添加成功后弹出MsgBox提示用户已完成

MsgBox("添加记录成功!

",MsgBoxStyle.OkOnly,"提示")

EndIf

函数结束

(b)下面以课程管理模块中修改课程来说明是如何修改记录的,说明如下:

函数开始:

修改记录时给出提示信息,等待用户确认

If(S<>6即用户选择的是取消按钮)Then

退出函数

EndIf

If(课程名对应的文本框为空)Then

MsgBox("课程名不能为空!

")

退出函数

EndIf

If(任课老师对应的文本框为空)Then

...............

ElseIf(S=6即用户选择的是确定按钮)Then

新建一个表示内存中数据的一个表tmptable

tmptable=DataSet1.Tables("课程信息")

打开连接

构造更新语句,来完成对数据的修改操作

DimtmpcommandAsNewSystem.Data.OleDb.OleDbCommand("Update课程信息set课程编号='"&TextID.Text&"',课程名='"&TextName.Text&"',任课老师='"&TextTeacher.Text&"',课程学分='"&TextPoint.Text&"',开课院系='"&ComDepart.Text&"',课程简介='"&TextAbout.Text&"'where课程编号='"&TextID.Text&"'",OleDbConnection1)

异常处理

清空DataSet对象并重新赋值

关闭连接

MsgBox("您的修改以被受理,更新成功!

",MsgBoxStyle.OkOnly,"提示")

EndIf

函数结束

(c)下面以学生管理模块中删除学生资料来说明是如何删除记录,说明如下:

函数开始:

删除记录时给出提示信息,等待用户确认

S=MsgBox("您确定要删除记录吗?

",36,"提示")

If(S=6即用户选择了确定按钮)Then

新建一个表示内存中数据的一个表tmptable

tmptable=DataSet1.Tables("学生信息")

打开连接

构造删除语句,来完成对数据的删除操作

DimtmpcommandAsNewSystem.Data.OleDb.OleDbCommand("deletefrom学生信息where学生编号='"&TextID.Text&"'",OleDbConnection1)

异常处理

清空DataSet对象并重新赋值

关闭连接

MsgBox("记录已经成功删除!

",MsgBoxStyle.OkOnly,"提示")

EndIf

函数结束

(3)信息查询模块的功能设计

查询模块主要包括学生资料查询和学生资料查询两个子模块。

而且查询时会给出相应的信息来告诉用户如何来做,什么不能为空,查询成功时也会给出相应的提示信息

(a)学生资料查询是一种模糊查询,可以根据给出部分信息进行查询,说明如下:

函数开始:

If(所有的可输入条件的文本框的内容都为空)

则弹出提示的Msgbox,告诉用户条件不能都为空

MsgBox("请选择一种查询条件!

不能都为空!

")

Else

新建一个表示内存中数据的一个表tmptable

打开连接

tmptable=DataSet5.Tables("学生信息")

构造查询语句,选择出满足条件的记录

DimtmpcommandAsNewSystem.Data.OleDb.OleDbCommand("select*from学生信息where学生编号LIKE'%"&Textid.Text&"%'AND学生姓名LIKE'%"&Textname.Text&"%'AND学生性别LIKE'%"&Textsex.Text&"%'AND年龄LIKE'%"&Textage.Text&"%'AND身份证号LIKE'%"&Textcard.Text&"%'AND所在系LIKE'%"&TextDepartment.Text&"%'",OleDbConnection1)

执行SQL语句并返回受影响的行数

tmpcommand.ExecuteNonQuery()

将查询对话框中的所有文本框的内容都置空

清空DataSet对象并重新赋值

DataSet5.Clear()

OleDbDataAdapter1.SelectCommand=tmpcommand

OleDbDataAdapter1.Fill(DataSet5)

关闭连接

MsgBox("查询成功!

",MsgBoxStyle.OkOnly,"提示")

EndIf

函数结束

(b)学生成绩查询是选择条件进行查询,说明如下:

PrivateSubBtQuery_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)

HandlesBtQuery.Click

函数开始:

If(依据对应的组合框的内容为空)Then

.............

Else

新建一个表示内存中数据的一个表tmptable

打开连接

tmptable=DataSet6.Tables("成绩信息")

构造查询语句,查询出满足条件的记录

DimtmpcommandAsNewSystem.Data.OleDb.OleDbCommand("select*from成绩信息where"&ComboBox1.Text&ComboBox2.Text&"'"&TextBox1.Text&"'",OleDbConnection1)

tmpcommand.ExecuteNonQuery()

清空DataSet对象并重新赋值

关闭连接

MsgBox("查询成功!

",MsgBoxStyle.OkOnly,"提示")

EndIf

函数结束

(4)修改密码功能模块设计:

本模块利用了两个函数来查询输入的用户名是否存在和查询用户名对应的密码与用户输入的密码是否一致。

这里就把那两个函数的代码省略了。

函数开始:

修改密码时给出提示信息

利用自定义的两个函数checkpassword()和checkUserID()来判断密码与用户编号不对应或者用户编号不存在

MsgBox("密码与用户编号不对应或者用户编号不存在")

TextUsername.Focus()

If(两次输入的密码不一致)then

MsgBox("两次输入的密码不一致!

请重新输入!

",MsgBoxStyle.Exclamation,"密码不一致")

新建一个表示内存中数据的一个表tmptable

打开连接

构造更新语句,来修改满足条件的记录

异常处理

清空DataSet对象并重新赋值

关闭连接

MsgBox("你的密码修改成功!

",MsgBoxStyle.OkOnly,"提示")

EndIf

函数结束

四.调试分析

4.1上机过程中出现的问题及其解决方案。

问题一:

再添加或修改记录时,当把原来的记录修改时,即使取消了添加与修改操作,虽然数据库中的数据没有改变,但是当前数据集中显示的记录会发生改变。

解决方案:

添加一个刷新的功能,使数据集中的数据重新被填充,可以避免类似错误的产生。

问题二:

在编写登录窗体的时候,当代码没有任何错误时,运行时,输入用户名跟密码后,仍然显示“用户名与密码不匹配,请重新输入”。

解决方案:

经过查阅资料后发现,用早Windows登录窗体中的数据类型必须是文本类型才可以,其余的类型都不会显示正确的输入。

问题三:

再添加Timer控件时,编写的代码正确时,仍然不显示时间,也不控制一行字的滚动,没有起到作用

解决方案:

原来时Timer的一个属性,我们必须把它设为TRUE,上面的问题就解决了。

4.2系统在开发环境下实现的功能以及结果

此系统是在系统平台:

Windowsxp,数据库服务器:

MicrosoftSQLServer2000,开发工

具:

VisualStudio2008的环境下开发的,实现了教务管理系统的基本操作。

(1)系统实现了对不同用户权限的用户提供了不同功能的操作,结果是对于用户权限为“管理员”的用户能够使用系统所有的功能,而对于用户权限为“用户”的用户,仅能完成其中的一部分功能,不能对院系信息、课程信息、成绩信息和用户信息进行添加、修改和删除操作。

只能对成绩资料进行查询和修改密码以及查阅帮助信息。

(2)本系统实现了对院系资料的添加、修改和删除操作;实现了对课程资料的添加、修改和删除操作;实现了对学生资料的添加、修改和删除操作以外,还能对学生资料进行不同方式的查询;实现了的对学生成绩资料的添加、修改和删除操作以外,还能够根据不同的条件对学生成绩资料进行查询。

(3)本系统实现了对用户资料的添加和删除操作,用户能够修改密码,完善了系统功能。

五.用户手册

(1)运行程序后,首先出现登录界面,用户根据提示输入用户名和密码,点击确定后进入主界面,如图1所示

图1登录窗口

输入用户名admin,密码admin,选择用户权限为管理员(管理员可以使用系统所有功能,所以进入的主界面中所有菜单选项都是可用的),点击确定按钮。

如果输入错误的用户名、密码或权限,系统就会给出错误的提示信息,如图2所示:

图2:

登录时输入错误的警告

(2)输入正确的用户名、密码和用户权限后,通过身份验证之后,进入系统的主界面,如图3所示。

其中系统菜单中包括修改密码和退出登录两个子菜单,系统用户管理菜单中包括用户管理子菜单,教务信息管理菜单中包括系别管理、课程管理、学籍管理和成绩管理四个子菜单,教务信息查询菜单中包括学生资料查询和学生成绩查询两个子菜单,帮助菜单中包括关于系统和关于用户两个子菜单。

图3主界面

(3)选择“系统”->“修改密码”命令,将弹出“修改密码”窗体,如图4所示,填写数据后,

单击确定按钮就会完成密码的修改操作。

但是当输入的用户名为空或者用户名与原密码不匹配,或者用户名不存在以及两次输入的密码不一致时都会给出相应的信息来提示和警告用户,如图5所示。

图4:

修改密码

图5:

警告和提示信息

(4)选择“系统用户管理”->“用户管理”命令,将弹出“用户管理”窗体,如图6所示,

当你点击记录集中的记录时,相应的数据就会在左侧显示,而且当你输入的用户名或密码及权限为空时,系统会给出相应的提示信息。

如图6所示:

图6:

有关的提示信息

(5)选择“教务信息管理”->“课程管理”命令,将弹出“课程管理”窗体,如图7所示,

图7:

课程管理界面

当你操作时系统会给出足够的提示信息,来告诉你什么样的输入是不合法的。

有关提示信息如图8所示:

图8:

相关提示信息

(6)选择“教务信息管理”->“学籍管理”命令,将弹出“学籍管理”窗体,如图9所示,

图9:

学籍管理界面

当你操作时系统会给出足够的提示信息,来告诉你什么样的输入是不合法的。

有关提示信息如图10所示:

图10:

相关提示信息

(6)选择“教务信息管理”->“系别管理”命令,将弹出“系别管理”窗体,如图11所示,

图11:

系别管理界面

当你操作时系统会给出足够的提示信息,来告诉你什么样的输入是不合法的。

有关提示信息如图12所示:

图12:

相关提示信息

(7)选择“教务信息管理”->“成绩管理”命令,将弹出“成绩管理”窗体,如图13所示,

图13:

成绩管理界面

当退出界面时,系统会给出提示信息,如图14所示:

图14:

退出界面提示

前面的那些提示信息对这几个功能模块都是一样的,这里就不一一演示,只是取其中一个进行演示。

(8)选择“教务信息查询”->“成绩查询”命令,将弹出“学生成绩查询”窗体,如图15

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2