教务管理系统教务管理系统.docx

上传人:b****5 文档编号:4048961 上传时间:2022-11-27 格式:DOCX 页数:13 大小:24.78KB
下载 相关 举报
教务管理系统教务管理系统.docx_第1页
第1页 / 共13页
教务管理系统教务管理系统.docx_第2页
第2页 / 共13页
教务管理系统教务管理系统.docx_第3页
第3页 / 共13页
教务管理系统教务管理系统.docx_第4页
第4页 / 共13页
教务管理系统教务管理系统.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

教务管理系统教务管理系统.docx

《教务管理系统教务管理系统.docx》由会员分享,可在线阅读,更多相关《教务管理系统教务管理系统.docx(13页珍藏版)》请在冰豆网上搜索。

教务管理系统教务管理系统.docx

教务管理系统教务管理系统

前言

随着计算机技术的普及,数据信息处理技术得到了空前发展,使得越来越多的人员从事于数据库操作相关的开发工作,并且不断有新人准备加入其中。

的几大功能模块,有着手工管理所不能替代的优点,比如:

查找方便、操作简单、检索速度快、性价比高、扩展性强等。

这些优点能够极大地提高教务信息管理的效率,对于加快教务管理自动化有着较为重要的意义。

因此,开发一套简单易用、方便快捷的教务管理系统,是十分有必要的。

1设计背景与设计目的

1.1设计背景

学校教务管理工作中一项非常重要的工作就是教学调度工作。

教学调度工作包括两个方面的内容:

一方面是按教学计划配课、排课,另一方面是日常教务管理。

日常教务管理是教学调度工作的一化、规范化处理;

(2)采用模块式结构,层次清楚,使用直观;

(3)具有冲突判断能力;

(4)统计结果准确、直观;

2相关理论与工具

2.1MicrosoftVisualC++6.0简介

MicrosoftVisualC++6.0是微软开发的一套优秀的可视化编程工具。

2.1.1MicrosoftVisualC++6.0的特色

VisualC++是Microsoft公司推出的功能最强大,最复杂的语言产品之一,它是目前为止Windows环境下进行大型软件开发的首选。

其特点如下:

(1)VisualC++的语法符合ANSIC++标准,并在此基础上针对Windows操作系统增加了一些语句;

(2)集成了MFC(MicrosoftFoundationClass)类库,MFC封装了WindowsAPI函数和消息,使得程序员可以使用MFC高效率的开发各种应用程序;

(3)提供MFCAppWizard,通过它可以轻松地完成对各种MFC类的使用与维护。

2.1.2MicrosoftVisualC++6.0的集成开发环境

现代的计算机语言产品都提供了集成开发环境。

VisualC++的集成开发环境提供了源程序编辑\编译\调试和运行等功能,是进行程序设计的工作场所。

VisualC++是MicrosoftVisualStudio的一部分,安装MicrosoftVisualStudio很简单,只要照着安装过程的提示,即可以顺利完成安装工作。

建议使用所有的默认设置安装MicrosoftVisualStudio。

安装完MicrosoftVisualStudio后,Windows【开始】菜单中的【程序】子菜单中会出现MicrosoftVisualStudio子菜单。

要启动VisualC++,只需选择【开始】/【程序】MicrosoftVisualStudio/VisualC++6.0命令即可。

(1)VisualC++主窗口

VisualC++的主窗口如图1所示,这是在File菜单中选择OpenWorkspace命令打开一个项目后显示的典型窗口。

图1 MicrosoftVisualC++6.0界面

在VisualC++主窗口中,除了通常的菜单\工具栏和状态栏外,还有项目工作台窗口\正文编辑窗口和输出窗口。

在源程序编写完成后,即可以对源程序进行编译。

Build菜单下的Compile命令用于启动编译器编译程序,产生目标代码模块;Build命令则不仅编译源程序,还调用链接程序生成最终可执行代码。

(5)资源编辑器

在Windows环境下,菜单\对话框\图标\位图和字符串等是独立于源程序代码的,它们被称为资源。

VisualC++提供了可视化的资源编辑界面,可以很方便地编辑这些资源。

单击项目工作台窗口上的ResourceView标签,然后双击其中一个对话框资源。

即可以对该对话框进行可视化编程。

(6)调试器

调试器是在程序设计中必不可少的辅助工具。

通过调试器,程序员能很快找到程序中的逻辑错误。

在编译阶段,编译器会找出程序的语法错误,但语法上完全正确的程序不一定就能正确的运行。

要找出逻辑错误,只能通过人工调试。

VisualC++提供了完善的程序调试环境,以便对程序进行调试工作。

2.1.3VisualC++6.0开发数据库的相关技术

VisualC++提供了多种访问数据库的技术,如下所示:

ODBC(OpenDataBaseConnectivity)

MFCODBC(MicrosoftFoundationClassODBC)

DAO(DataAccessObject)

借书证号,图书编号,借书日期)VALUES(‘000000001’,‘000000001’,‘2006-6-1’)。

INSERT语句还可以将多行数据添加到目标表中去,在这种形式的INSERT语句中,新行的数据值不是在语句正文中明确地指定的,而是语句中指定的一个数据库查询。

添加的值来自于数据库自身的行,在某些特定的状态下,这是非常有用的。

多行INSERT语句为拷贝数据提供了一种紧凑而高效的方法,但在该教务管理系统中没有使用这种方法,在系统中是使用循环依照上面的用法来完成多个记录的插入。

(3)UPDATE标准语法:

UPDATETable_NameSETcolumnname1=value1[,columname2=value2…][WHEREsearch_condition]

举例:

在Book表中将书号为"0000000001"的书名改为"MicrosoftVisualC++6.0入门教程"。

实现语句为:

UPDATEBookSETBookName=’MicrosoftVisualC++6.0入门教程’WHEREBookid=‘0000000001’。

Update语句用于更新单表中选定行的一列或多列的值。

要更新的目标表在语句中定义,Set子句则指定要更新哪些列并计算它们的值。

Update语句总是包含Where语句,而且Update语句比较危险,所以您必须明确地认识到Where语句的重要性,Where语句被用来指定需要更新的行。

(4)Delete语句标准语法:

DELETEFROM tablename WHERE condition

举例:

在Book表中将书号为"0000000001"的书籍信息删除。

实现语句为:

DELETEFROMBookWHEREBookid=‘0000000001’。

在设计数据库系统时,常常会遇到归类、汇总、映射、索引、子查询等复杂操作,其相应的支持与实现如下:

(1)GROUPBY方法

GROUPBY子句语法为:

SELECTcolumn1,SUM(column2)FROM“table1”GROUPBY”column-list”

这个GROUPBY子句将集中所有的行在一起,它包含了指定列的数据以及允许合计函数来计算一个或者多个列。

(2)组合条件和布尔运算符

以下的SQL语句中就含有组合条件:

SELECTcolumn1,SUM(column2)FROMlist-of-tableWHERE“condition1”AND“condition2”

(3)UNION子句

有些时候,需要一起浏览多个查询的结果、组合它们的输出,这时可以使用UNION关键字。

举例:

将Book表和BookType表的两个查询结果合并到一起,得到的结果是每本书的书号和书类型名。

实现语句为:

SELECTBookid,BooktypenameFROMBookUNIONSELECTBookid,BooktypenameFROMBookType[2]。

总体设计思想

在设计这套系统时,根据实际情况,从以下几个方面进行考虑:

(1)能对日常教务管理所包含的几大部分内容:

基本信息管理、基本信息查询、成绩管理等进行即时地处理,并能对录入的数据进行分类、统计、分析。

(2)系统应简洁,易使用、易维护、适合非计算机人员使用。

应做到简单易学,界面友好清晰。

(3)建立安全保密措施,设立权限,对使用人要进行身份认证。

部分数据只能查阅,不能修改。

根据需求分析的结果,本系统主要划分为以下几个模块:

,包括学生信息的添加、修改、删除等。

在进行信息的添加时,首先新窗口进行学生信息的录入,在保存的时候要进行学生学好是否重复的检验,如果添加的学生编号重复要对用户进行提示,只有在不重复的情况下才能够进行信息的添加。

在进行信息的删除时,要首先打开提示窗口让用户确认是否删除,只有在用户确认后才能够进行信息的删除。

在进行信息的修改时,要能够根据用户选定的学生进行修改,即列出用户选定的学生的所有信息,在这个基础上进行学生信息的修改。

(2)教师信息管理

教务工作人员通过此模块来管理教师信息,包括教师信息的添加、修改、删除等。

在进行信息的添加时,首先新窗口进行教师信息的录入,在保存的时候要进行教师编号是否重复的检验,如果添加的教师编号重复要对用户进行提示,只有在不重复的情况下才能够进行信息的添加。

在进行信息的删除时,要首先打开提示窗口让用户确认是否删除,只有在用户确认后才能够进行信息的删除。

在进行信息的修改时,要能够根据用户选定的教师进行修改,即列出用户选定的教师的所有信息,在这个基础上进行教师信息的修改。

(3)班级信息管理

教务工作人员通过此模块来管理班级信息,包括班级信息的添加、修改、删除等。

在进行信息的添加时,首先新窗口进行班级信息的录入,在保存的时候要进行班级编号是否重复的检验,如果添加的班级编号重复要对用户进行提示,只有在不重复的情况下才能够进行信息的添加。

在进行信息的删除时,要首先打开提示窗口让用户确认是否删除,只有在用户确认后才能够进行信息的删除。

在进行信息的修改时,要能够根据用户选定的班级进行修改,即列出用户选定的班级的所有信息,在这个基础上进行班级信息的修改。

(4)课程信息管理

教务工作人员通过此模块来管理课程信息,包括课程信息的添加、修改、删除等。

在进行信息的添加时,首先新窗口进行课程信息的录入,在保存的时候要进行课程编号是否重复的检验,如果添加的课程编号重复要对用户进行提示,只有在不重复的情况下才能够进行信息的添加。

在进行信息的删除时,要首先打开提示窗口让用户确认是否删除,只有在用户确认后才能够进行信息的删除。

在进行信息的修改时,要能够根据用户选定的课程进行修改,即列出用户选定的课程的所有信息,在这个基础上进行课程信息的修改。

(5)学生成绩管理

教务工作人员通过此模块来管理学生的成绩。

在进行学生成绩的添加时,可利用为学生设置的所在班级的课程来直接输入成绩。

(6)班级课程设置

教务工作人员通过此模块来设置班级课程。

(7)日志信息管理

教务工作人员通过此模块来查看用户的操作日志,并可以删除日志信息。

(8)文件信息管理

教务工作人员通过此模块来发布、删除教务通知信息,用户则可以查看教务通知信息。

(9)综合查询

用户通过此模块来查询所需要的各种信息。

例如,教师信息查询提供了根据教师编号、教师姓名、所在院系等查询条件来进行教师基本信息的查询。

同时,在查询时还提供了进行模糊查询的功能,即该模块能够利用用户输入的非完整的查询条件进行查询,这样更加方便了用户的查询。

(10)常用工具

该模块提供了一些实用的工具,如定时器,它能定时提醒用户按时休息,还能定时运行各种程序,定时关闭计算机。

(11)权限管理

管理员可以通过权限管理模块能够设置教师和学生的权限,比如是否允许添加用户,是否允许修改密码,是否允许删除日志信息,是否允许下载资源等等。

(12)用户管理

用户管理模块提供了增加用户和修改用户两个功能,管理员可以通过增加用户功能添加新的用户到数据库中。

用户可以通过修改用户功能来修改登录密码。

该教务管理系统采用了"自上而下"、"自下而上"的设计方法和模块化的设计思想,系统包含

了教学管理的需求,且系统有良好的扩充性,可根据管理需求进一步增加系统功能,不断完善。

4.4分析与创建数据库 

4.4.1数据库的概念设计

针对一般教务信息管理系统的需求,通过对教务信息管理工作过程的内容、数据流程和基本信息数据流图的分析,在本系统中主要有以下实体:

(1)学生信息,包括的数据项有:

学生学号,学生姓名,学生性别,学生年龄,学生姓名,籍贯,政治面貌,宿舍,备注。

(2)教师信息,包括的数据项有:

教师编号,教师姓名,教师性别,教师年龄,职称。

(3)班级信息,包括的数据项有:

班级编号,编辑名称,入学年份,班主任。

(4)课程信息,包括的数据项有:

课程编号,课程名称,学分,学时,课程性质,备注。

(5)用户信息,包括的数据项有:

用户名,用户密码,用户权限。

(6)教务文件信息,包括的数据项有:

文件名,文件内容。

有了上面的数据结构和数据项,现在开始进行下面的数据库概念结构设计。

教务工作信息管理系

(8)日志信息(操作用户,操作类型,操作时间)

(9)授课(课程编号,教师编号)

(10)教务文件信息(文件名,文件内容)

根据模块的设计,以及规范化的设计要求,该设计的数据库表设计如下:

学生信息表如表3所示,教师信息表如表4所示,班级信息表如表5所示,课程信息表如表6所示,开设信息表如表7表所示,选课信息表如表8所示,用户信息表如表9所示,日志信息表如表10所示,授课教师表如表11所示,

详细设计阶段的关键任务是确定怎样具体地实现所要求的目标系统,也就是要设计出程序的“蓝图”,除了应该保证程序的可靠性外,使将来编写出的程序可读性好,容易理解,容易测试和容易修改,维护是详细设计阶段最重要的目标。

现在介绍一下该系统的详细设计与实现过程。

5.1日志信息管理功能

通过操作日志模块,该系统每一次改变数据库数据的操作都会在操作日志表格中有相应的记录。

这样可以增强操作人员的责任感,提高系统的安全性,也利于维护数据库数据的完整性。

此外,一个详实的操作日志,也给开发过程中的调试,除错带来了很大的便利,所以,把这个模块的设计放在了最前面[12]。

在设计该模块时将其又分为两个小的模块:

写日志模块和读日志模块。

写日志模块主要负责在有操作进行时将操作的相关信息写入数据库中;而读日志模块则主要用于查看日志信息,将存储于数据库中的日志信息读出并显示出来。

首先,介绍一下写日志模块的实现思路:

定义一个名为CLogMngr的类,在这个类中,保存了一个数据库连接直接m_DBCnt和当前用户的ID(m_user)。

在主对话框CLoginTestDlg中加入一个CLogMngr型的成员变量,并在CLoginTestDlg:

:

OnInitDialog()中调用其Setup方法进行初始化,设置好数据库连接指针和用户名。

这样当程序中某处需要写信息进入操作日志的时候,只需调用这个类的AddLog方法即可。

在AddLog函数中利用了Connectiong对象的Execute方法,直接执行SQL语句,向HOWDO表中加入了一条包含了操作者、操作时间和操作内容3个字段的记录。

直接使用SQL语句的方法在表比较简单的时候很快捷,但在表包含比较多的字段的时候,就不太实用了。

在这里因为日志表比较简单,所以选择使用这种方法。

紧接着就是读日志模块的设计,该功能的界面设计如图7所示。

它包含了一个列表框控件,几个编辑框和两个按钮。

这个窗口用以显示系统中所有的日志记录。

它还将实现清空所有记录的功能(注意为了保证日志记录的完整性、完全性,不能单独删除某条记录)。

在删除所有记录时,用SQL语句显得很方便。

但是注意最好不要用"Delete*FROMhowdo"这样的语句,而是使用"TRUNCATETABLE"语句,它的速度比Delete要快。

在这里就是使用了"TRUNCATETABLE"语句,如theAp

Windows程序是消息驱动的,每一个对象都会有很多的Windows消息。

点击[登录]按钮后,要让程序进行密码验证的操作,就必须为[登录]按钮增加一个响应"鼠标点击"的函数。

在MFCClassWizard对话框中,选中"MessageMap"选项卡。

然后在其中为[登录]按钮增加消息响应函数OnOk()。

展开CLoginDlg类,双击OnOk()函数,在编辑区打开OnOk的定义,将CLoginDlg:

:

OnOK()的内容修改为如下内容:

if(m_name==""||m_code=="")

{

MessageBox("请输入密码!

");

}

strSql.Format("SELECT*FROMuser1WHERE[usermanager]='%s'AND[username]='%s'AND[usercode]='%s'",m_combo,m_name,m_code);

……

MessageBox("密码错误!

");  //提示输入错误

……

MessageBox("登陆成功!

");//提示登录成功

5.2.3调试结果

如果用户输入的信息是错误的,在单击登录按钮后,系统会弹出如下对话框提示用户输入有误。

如图12所示。

 

图12错误信息对话框

如果用户输入的信息是正确的,在单击登录按钮后,系统会直接进入主界面。

5.3主界面的设计实现

登录完成之后,显示出主界面。

如图13所示。

单击菜单栏的菜单项就能弹出某个功能的界面。

主界面根据用户的权限不同而有不同,但整个框架是一样的,只是某些菜单会失效变灰。

譬如:

当登录用户为教师或学生时,那么工具栏上的"权限管理"菜单就会变成灰色,因为该功能只有管理员才能使用。

 

图13教务工作信息管理系统主界面

在主界面的标题栏上将会显示当前登录用户的用户名、该用户的权限以及系统当前时间,譬如上图中的用户为粟彬,他的权限为管理员,时间为2006年6月8号的19:

40:

43。

实现这一功能的代码如下:

voidCLoginDlg:

:

OnOK()

……

(2)当工作人员选择该生所在班级时,"选择学号"组合控件将作相关数据的查询,查找该班中的所有学生,并将该班所有学生学号显示在控件中以便工作人员选取。

因此,应该给"选择班级"组合框增加一个消息响应函数voidOnSelchangeComboClass(),在该函数中加入如下代码:

     

(1)实现导入功能的代码[15]如下:

m_pRecordset->AddNew();

m_pRecordset->PutCollect("username",_variant_t(m_username));

m_pRecordset->Update();

……

}

5.9权限管理模块

5.9.1权限管理模块的功能

管理员可以通过权限管理模块能够设置教师和学生的权限,比如是否允许添加用户,是否允许修改密码,是否允许删除日志信息,是否允许下载资源等等。

当管理员需要修改教师和学生的权限时,只需在相应的功能右边选择"允许"或"不允许",然后点击"确定"按钮即可。

N_NAME,1);

ExitWindowsEx(EWX_SHUTDOWN,0);//关闭计算机      

(2)实现定时打开程序的关键代码如下:

  

MessageBox("请选择需要打开的文件或程序");

CFileDialogfiledlg(TRUE,NULL,(LPCTSTR)m_localFilePath,

NULL,"AllFiles(*.*)|*.*|EXEFiles(*.exe)|*.exe||");//选择文件

if(IDOK==filedlg.DoModal())

{

m_localFilePath=filedlg.GetPathName();

悉,否则将延迟工作速度,必须停下来再去学习,后因时间问题,本系统还有一些不尽如意之处。

总的来说,这次的毕业设计为我即将踏入社会之前提供了一次锻炼的舞台。

正像指导老师说的一样,他让我对几年来所学的专业课有了更为深刻的认识,使知识得到了融会贯通,得到了比以往学习任何一门课都大的提高和进步。

对于我们来讲,我们每天都要学习,但这书本上的东西如果只是个理论,如果不把他应用于实践中,这门课可能对我们来说完全没有意义。

经过开发这个系统,这不仅仅是一次毕业设计,不仅仅是学会了一门开发语言,更重要的是在学习的过程中,所有的问题要自已去面对,有问题也只有靠自已去解决,在学习和解决这些困难的过程中提高了我学习的能力、解决问题的能力和实际工作的能力,学到了许多书本以外的知识,这是我在踏出这个校门之前给予自已最大的回报,同时我也相信会给我在以后的人生道路上带来很多的帮助。

参考文献

[1]李劲,谢兆阳SQLServer2000数据库设计与系统管理[M].北京:

清华大学出版社,2001:

10-135.

[2]徐守祥.数据库应用技术—SQLServer篇[M].人民邮电出版社,2005:

1-35.

[3]刘杰.SQLServer数据库管理系统[M].中国水利水电出版社,1999:

1-5.

[4]周之英.现代软件工程[M].科学出版社,2003:

123-145.

[16]张志学.MicrosoftVisualC++项目开发指南[M].清华大学出版社,2000:

31-46.

致谢

忙碌了两个多月,我的毕业设计和论文终于完成了。

孤掌难鸣,今天的成绩是很多人帮助的结果。

首先要感谢的,当然是我的指导老师周晓兰老师,在我进行毕业设计的这段时间,她给了我很大的支持与帮助,尤其在选题以及数据库前期设计上给予了很大的指导。

更是在百忙之中抽出时间,指导和检查我的设计和论文,帮我指导数据库的设计和系统功能模块的划分,跟我探讨我在诸多观点上或论述上的错误,对我代码的优化方面进行了指导,令我受益匪浅。

还要感谢的,是教过我帮助过我的老师们,他们的教导使我积累了大量的知识,在做毕业设计的时候,不会因为基础知识的不足而寸步难行。

最后要感谢的,是帮助过我的同学们,感谢刘志彪同学在系统设计上给予的建议和帮助,感谢罗潇同学在编程上给予我的帮助,还要感谢在一旁支持和鼓励我的同学。

目录

前言1

1设计背景与设计目的2

1.1设计背景2

1.2设计目标2

2相关理论与工具3

2.1MicrosoftVisualC++6.0简介3

2.1.1MicrosoftVisualC++6.0的特色3

2.1.2MicrosoftVisualC++6.0的集成开发环境3

2.1.3VisualC++6.0开发数据库的相关技术5

2.2SQLSERVER2000简介5

2.2.1SQL语言概述5

2.2.2MSSQLServer2000简述8

2.3为什么选用VisualC++6.08

2.4为什么选用SQLServer20008

3需求分析9

3.1功能需求分析9

3.2运行需求分析11

4概要设计12

4.1任务概述12

4.2系统结构设计12

4.3模块设计12

4.4分析与创建数据库15

4.4.1数据库的概念设计15

4.4.2数据库的逻辑设计及表的设计16

5系统的详细设计与实现19

5.1日志信息管理功能19

5.2用户登录功能模块21

5.2.1连接数据库23

5.2.2添加"密码验证"代码24

5.2.3调试结果25

5.3主界面的设计实

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

当前位置:首页 > 外语学习 > 韩语学习

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1