教室管理系统.docx
《教室管理系统.docx》由会员分享,可在线阅读,更多相关《教室管理系统.docx(31页珍藏版)》请在冰豆网上搜索。
教室管理系统
摘要:
在校园生活中,教室仍然是教学活动和学生课余活动中最主要的场所之一,然而,由于学生数目过大,教室资源有限限制了师生使用教室。
以前,一些学校对教室的管理仅限于人工管理,处理起来比较复杂,容易出错,而且不利于删除和添加,更加不利于查找,凸显出建立教室安排系统的紧迫性。
本系统着力于整合教室管理中的课程安排,教室调课,设备损坏及维修以及单位借用等影响教室使用的环节,实现统一管理。
在此基础上提供方便有效的课表查询,空教室查询,学生出勤次数查询,设备维护记录查询。
本系统针对教室管理不统一的问题,着力于将教室管理中的课程安排,教师调课,单位借用等联系起来,建立一个统一的管理系统,以提高处理效率,方便统一管理,同时为师生提供方便的查询.教室安排系统使得教室的安排变得更加简单,添加与删除变得更加容易,特别是教室查找。
此系统提高了信息处理的速度与准确性,能够及时准确有效的查询和修改教室的安排情况,以及更有效的对设备维护进行管理.
关键词:
数据库教室管理自动化处理
一、序言
在大学里,教室仍然是教学的主要场所,也是学生学习的重要场所,所以教室环境和设备直接影响到教学活动的开展和学生的学习.
为了保证教室环境良好的运转,教室的管理也就显得十分的必要和重要。
但是教室的管理也并不是一件很容易的事情.教室设备(尤其是多媒体设备)有所损坏必须及时登记,修复,否则很可能影响以后教学,造成教学事故。
教室的使用具有一定的计划性和流动性,即一个班在相应的时间里,所上的课程和使用的教室是固定的,但是不同的课程在不同的时间里会使用不同的教室,这与教务处的课程安排是密切相关的。
尤其是使用多媒体教室的时候,这就显得比较麻烦。
为了能够更系统的,更有序的,更合理的,更有效的进行教室管理,有必要利用计算机来处理各种信息,这也就需要一个更有效的教室管理系统.
为此,经过较详细的调查和慎重的思考,我决定做一个教室管理系统,来解决这些问题,使管理简化,方便而且更有效。
二、教室系统的需求分析
处理对象:
本系统总体上说涉及了五个方面的数据,后勤的信息,教室的信息,课程的信息,教师的信息,学生的信息。
处理功能要求:
教室管理系统的具体包括四个子系统:
学生查询子系统,教师查询子系统,后勤查询子系统,管理员管理子系统.
学生登录界面的功能是查询教室信息,查询自己课程信息,更改自己账户信息;教师登陆界面的功能是查询教室信息,查询自己教授课程信息,更改账户信息;后勤登陆界面的功能是查询教室信息,包括设备故障情况,故障时间;管理员登陆界面的功能是查询并更改教室信息,包括设备故障情况,故障时间,是否空闲。
安全性和完整性要求:
在这个系统中涉及到了相关人员的问题,而且同一个职工可能在不同的表中存在,要考虑到,如果辞退或者某职工辞职,那么不仅要在职工信息表中删除相应的信息,还要在其他的相关表中删除信息,这就涉及到了安全性的问题,初步打算用一个触发器来解决这个问题。
完整性也是一个重要的内容,它也涉及安全性上的问题。
三、概念结构设计
教室管理系统E—R图
四、数据结构设计
教室管理系统
数据流图
教室管理系统功能模块图
学生查询子系统:
学生查询子系统顶层数据流图
底层数据流图
数据字典:
“学生"是该子系统一个重要的数据结构,可以如下描述:
数据结构:
学生
含义说明:
学生查询子系统的重要数据结构,定义了一个学生的有关信息
组成:
学号,姓名,性别,班级
“教室”是该子系统另一个重要数据结构,可以如下描述:
数据结构:
教室
含义说明:
学生查询子系统的重要数据结构,定义了教室的有关信息
组成:
教室编号,教室信息
“学号”是该子系统一个重要的数据项,可以如下描述:
数据项:
学号
含义说明:
唯一标识每个学生
类型:
varchar
长度:
10
取值范围:
0000000000—9999999999
取值含义:
前两位标识该学生所在年级,再三位标识所在学院,再三位标识所在班级,后两位按顺序编号
“姓名"是该子系统重要数据项,可以如下描述:
数据项:
姓名
含义说明:
学生个人信息
类型:
varchar
“性别"是该子系统重要数据项,可以如下描述:
数据项:
性别
含义说明:
学生个人信息
类型:
varchar
“班级”是该子系统重要数据项,可以如下描述:
数据项:
班级
含义说明:
标识学生所在集体
类型:
varchar
长度:
8
取值范围:
00000000—99999999
取值含义:
前两位标识学生所在年级,再三位标识所在学院,后三位按顺序编号
“教室编号”是该子系统另一重要数据项,可以如下描述:
数据项:
教室编号
含义说明:
唯一标识每个教室
类型:
varchar
长度:
5
取值范围:
00000—99999
取值含义:
前两位标识楼号,后三位标识房号
“教室信息”是该子系统另一重要数据项,可以如下描述:
数据项:
教室信息
含义说明:
教室是否空闲,教室课程信息
类型:
varchar
长度:
2
数据流“教室信息”可如下描述:
数据流:
教室信息
说明:
每个教室编号,教室是否空闲
组成:
教室信息=教室编号+是否空闲
数据流来源:
教务处
数据流去向:
学生查询
数据存储“学生”可如下描述:
数据存储:
学生
说明:
学生查询结果
流入数据流:
教室信息
流出数据流:
是否空闲,课程信息
组成:
教室是否空闲,课程信息
处理过程“学生查询服务”可如下描述:
处理过程:
学生查询服务
说明:
为学生提供查询教室和课程信息服务
输入:
学号,姓名,教室编号
输出:
教室是否空闲,课程信息
处理:
审定是否符合查询目标后,学生自行决定学习情况
教室查询子系统:
教师查询子系统顶层数据流图
底层数据流图
数据字典
“教师”是该子系统一个重要的数据结构,可以如下描述:
数据结构:
教师
含义说明:
教师查询子系统的重要数据结构,定义了一名教师的有关信息
组成:
教师编号,姓名,性别,班级,年龄
“教室”是该子系统另一个重要数据结构,可以如下描述:
数据结构:
教室
含义说明:
教师查询子系统的重要数据结构,定义了教室的有关信息
组成:
教室编号,教室信息
“教师编号"是该子系统一个重要的数据项,可以如下描述:
数据项:
教师编号
含义说明:
唯一标识每名教师
类型:
varchar
长度:
8
取值范围:
00000000-99999999
取值含义:
前三位标识所在学院,再三位标识所在班级,后两位按顺序编号
“姓名”是该子系统重要数据项,可以如下描述:
数据项:
姓名
含义说明:
教师个人信息
类型:
varchar
“性别”是该子系统重要数据项,可以如下描述:
数据项:
性别
含义说明:
教师个人信息
类型:
varchar
“班级”是该子系统重要数据项,可以如下描述:
数据项:
班级
含义说明:
标识教师教授学生集体
类型:
varchar
长度:
8
取值范围:
00000000-99999999
取值含义:
前两位标识锁教授学生所在年级,再三位标识所在学院,后三位按顺序编号
“教室编号"是该子系统另一重要数据项,可以如下描述:
数据项:
教室编号
含义说明:
唯一标识每个教室
类型:
varchar
长度:
5
取值范围:
00000-99999
取值含义:
前两位标识楼号,后三位标识房号
“教室信息”是该子系统另一重要数据项,可以如下描述:
数据项:
教室信息
含义说明:
教室是否空闲,教室课程信息
类型:
varchar
长度:
2
数据流“教室信息"可如下描述:
数据流:
教室信息
说明:
每个教室编号,教室是否空闲
组成:
教室信息=教室编号+是否空闲
数据流来源:
教务处
数据流去向:
教师查询
数据存储“教师”可如下描述:
数据存储:
教师
说明:
学生查询结果
流入数据流:
教室信息
流出数据流:
是否空闲,课程信息
组成:
教室是否空闲,课程信息
处理过程“教师查询服务”可如下描述:
处理过程:
教师查询服务
说明:
为教师提供查询教室和课程信息服务
输入:
教师编号,姓名,教室编号
输出:
教室是否空闲,课程信息
处理:
审定是否符合查询目标后,教师了解自己教授情况,占用教室进行另外授课
管理员管理子系统
管理员管理子系统顶层数据流图
底层数据流图
数据字典
“管理员"是该子系统一个重要的数据结构,可以如下描述:
数据结构:
管理员
含义说明:
管理员管理子系统的重要数据结构,定义了一个管理员的有关信息
组成:
管理员编号,姓名,性别,年龄,负责教室
“教室”是该子系统另一个重要数据结构,可以如下描述:
数据结构:
教室
含义说明:
管理员管理子系统的重要数据结构,定义了教室的有关信息
组成:
教室编号,是否空闲,课程信息,上课班级,故障信息
“管理员编号”是该子系统一个重要的数据项,可以如下描述:
数据项:
管理员编号
含义说明:
唯一标识每个管理员
类型:
varchar
长度:
10
取值范围:
0000000000—9999999999
取值含义:
按顺序编号
“姓名”是该子系统重要数据项,可以如下描述:
数据项:
姓名
含义说明:
管理员个人信息
类型:
varchar
“性别”是该子系统重要数据项,可以如下描述:
数据项:
性别
含义说明:
管理员个人信息
类型:
varchar
“年龄”是该子系统重要数据项,可以如下描述:
数据项:
年龄
含义说明:
管理员个人信息
类型:
varchar
长度:
2
取值范围:
20—50
“负责教室”是该子系统重要数据项,可以如下描述:
数据项:
负责教室
含义说明:
管理员负责的教室
类型:
varchar
长度:
5
取值范围:
00000—99999
取值含义:
前两位标识楼号,后三位标识房号
“教室编号”是该子系统另一重要数据项,可以如下描述:
数据项:
教室编号
含义说明:
唯一标识每个教室
类型:
varchar
长度:
5
取值范围:
00000-99999
取值含义:
前两位标识楼号,后三位标识房号
“教室信息”是该子系统另一重要数据项,可以如下描述:
数据项:
教室信息
含义说明:
教室是否空闲,教室故障信息
类型:
varchar
“班级信息”是该子系统另一重要数据项,可以如下描述:
数据项:
班级信息
含义说明:
上课班级,班级学生人数
类型:
varchar
“课程信息"是该子系统另一重要数据项,可以如下描述:
数据项:
课程信息
含义说明:
课程编号,课程名称
类型:
varchar
数据流“教室信息"可如下描述:
数据流:
教室信息
说明:
负责教室的基本信息
组成:
教室信息=教室编号+是否空闲+故障情况+上课班级+班级学生人数
数据流来源:
教务处
数据流去向:
管理员管理子系统
数据存储“管理员管理子系统"可如下描述:
数据存储:
管理员管理子系统
说明:
管理员更新信息后录入该子系统
流入数据流:
教室信息
流出数据流:
教室信息
组成:
教室编号,是否空闲,课程信息,上课班级,故障信息
处理过程“管理员管理”可如下描述:
处理过程:
管理员对教室信息进行管理更新
输入:
管理员编号,姓名,教室编号
输出:
教室信息
处理:
审定是否有更新后,将更新内容录入管理员管理子系统
后勤查询子系统:
后勤查询子系统顶层数据流图
底层数据流图
数据字典
“后勤人员"是该子系统一个重要的数据结构,可以如下描述:
数据结构:
后勤
含义说明:
后勤查询子系统的重要数据结构,定义了一个后勤人员的有关信息
组成:
人员编号,姓名,性别,年龄,负责教室
“教室"是该子系统另一个重要数据结构,可以如下描述:
数据结构:
教室
含义说明:
后勤查询子系统的重要数据结构,定义了教室的有关信息
组成:
教室编号,故障信息,卫生情况
“人员编号”是该子系统一个重要的数据项,可以如下描述:
数据项:
人员编号
含义说明:
唯一标识每个后勤人员
类型:
varchar
长度:
10
取值范围:
0000000000—9999999999
取值含义:
按顺序编号
“姓名”是该子系统重要数据项,可以如下描述:
数据项:
姓名
含义说明:
后勤人员个人信息
类型:
varchar
“性别”是该子系统重要数据项,可以如下描述:
数据项:
性别
含义说明:
后勤人员个人信息
类型:
varchar
“年龄"是该子系统重要数据项,可以如下描述:
数据项:
年龄
含义说明:
后勤人员个人信息
类型:
varchar
长度:
2
取值范围:
20—50
“负责教室”是该子系统重要数据项,可以如下描述:
数据项:
负责教室
含义说明:
后勤人员负责的教室
类型:
varchar
长度:
5
取值范围:
00000-99999
取值含义:
前两位标识楼号,后三位标识房号
“教室编号”是该子系统另一重要数据项,可以如下描述:
数据项:
教室编号
含义说明:
唯一标识每个教室
类型:
varchar
长度:
5
取值范围:
00000—99999
取值含义:
前两位标识楼号,后三位标识房号
“教室信息"是该子系统另一重要数据项,可以如下描述:
数据项:
教室信息
含义说明:
教室故障信息,卫生信息
类型:
varchar
数据流“教室信息”可如下描述:
数据流:
教室信息
说明:
负责教室的基本信息
组成:
教室信息=教室编号+故障情况+卫生情况
数据流来源:
教务处
数据流去向:
后勤人员管理子系统
数据存储“后勤人员"可如下描述:
数据存储:
后勤人员
说明:
后勤人员查询得到信息后进行故障处理
流入数据流:
教室信息
流出数据流:
教室信息
组成:
教室编号,故障信息,卫生情况
处理过程“后勤人员管理”可如下描述:
处理过程:
后勤人员查询教室信息
输入:
人员编号,姓名,教室编号
输出:
教室信息
处理:
审定是否有故障后,对教室故进行一系列故障处理,清扫卫生
五、数据库逻辑结构设计
教室(编号,人数,是否空闲,故障情况,故障时间,录入时间)
主键为:
编号。
课程(课程编号,课程名称,时间,教室,班级,教师)
主键为:
课程编号。
后勤(职工编号,姓名,性别,年龄,负责教室)
主键为:
职工编号
教室信息数据属性
数据项名
数据类型
长度
非空
主键
教室编号
varvarchar
5
非空
主键
教室人数
varvarchar
3
非空
故障情况
varvarchar
2
空
故障时间
varvarchar
20
空
是否空闲
varvarchar
2
非空
录入时间
varvarchar
20
非空
课程信息数据属性
数据项名
数据类型
长度
非空
主键
课程编号
varvarchar
10
非空
主键
课程名称
varvarchar
30
非空
教室编号
varvarchar
5
非空
时间
varvarchar
20
非空
教师
varvarchar
20
非空
班级
varvarchar
40
非空
后勤人员信息数据属性
数据项名
数据类型
长度
非空
主键
人员编号
varvarchar
20
非空
主键
姓名
varvarchar
20
非空
性别
varvarchar
2
非空
年龄
varvarchar
2
非空
教室编号
varvarchar
5
非空
六、数据库的实施
创建数据库
创建基本信息表
创建视图
创建存储过程
创建触发器
七、数据库运行与维护
八、VB程序的实现
登陆界面设计
窗口设计
程序设计
系统管理员界面设计
窗口设计
程序设计
后勤服务人员界面设计
窗口设计
学生登陆界面
程序设计
教室登陆界面设计
窗口设计
九、附录
创建数据库
createdatabase教室数据库——创建教室数据库
onprimary
(name=’classroomdb_data’,
filename=’d:
\sqldata\classroomdb_data。
mdf’,
size=5mb,
maxsize=100mb,
filegrowth=5mb)
logon
(name='classroomdb_log’,
filename='d:
\sqldata\classroomdb_log。
ldf',
size=5mb,
maxsize=100mb,
filegrowth=5mb)
创建表的基本信息
1。
——创建教室基本信息表
use教室数据库
createtable登陆基本信息
(账号varchar(20)notnull,
密码varchar(20)notnull)
go
createtable教室基本信息
(教室编号varchar(5)notnullprimarykey,
容纳人数varchar(3)notnull,
是否空闲varchar
(2)notnull,
故障情况varchar
(2),
故障时间varchar(20),
录入日期varchar(20))
go
—-创建课程基本信息表
createtable课程基本信息
(课程编号varchar(10)notnullprimarykey,
课程名称varchar(30)notnull,
时间varchar(20),
教室编号varchar(5)notnull,
班级varchar(40)notnull,
教师varchar(20)notnull)
go
--创建后勤基本信息表
createtable后勤基本信息
(职工编号varchar(20)notnullprimarykey,
姓名varchar(20)notnull,
性别varchar
(2)notnull,
年龄varchar
(2)notnull,
负责教室varchar(5)notnull)
go
创建视图
use教室数据库
go
createview当日教室信息as
selectj.教室编号,j.是否空闲,k。
时间
fromdbo。
教室基本信息asjINNERJOIN
dbo。
课程基本信息askonj。
教室编号=k。
教室编号
go
createview故障教室信息as
SELECT教室编号,故障情况,故障时间,录入日期AS录入时间
FROMdbo.教室基本信息ASg
go
createview后勤值班信息as
SELECT姓名,值班时间,负责教室
FROMdbo。
后勤基本信息ASh
go
createview教师课程信息as
SELECTJ.教室编号,K.课程名称,K.班级,K。
时间,K.教师
FROMdbo。
教室基本信息ASJINNERJOIN
dbo.课程基本信息ASKONJ。
教室编号=K。
教室编号
go
创建存储过程
use教室数据库
go
ifexists(selectnamefromsysobjectswherename='isbusy'andtype='p')
dropprocedureisbusy
go
--创建存储过程:
找出空闲教室
createprocedureisbusyas
select*from教室基本信息where教室基本信息.是否空闲='是'
go
ifexists(selectnamefromsysobjectswherename=’isgz'andtype=’p')
dropprocedureisgz
go
-—创建存储过程:
找出故障情况教室
createprocedureisgzas
select*from教室基本信息where教室基本信息。
故障情况='是’
go
创建触发器
use教室数据库
ifexists(selectnamefromsysobjectswherename='coursetr’andtype='tr’)
droptriggercoursetr
go
createtriggercoursetr——在更新‘课程基本信息表’中的是‘教室编号’时,教室表中的‘是否空闲也被更新
on课程基本信息forupdate
as
declare@rowsint
select@rows=@@ROWCOUNT
if@rows〈>0
ifUPDATE(教室编号)
begin
updatejsetj。
教室编号=i.教室编号
from教室基本信息j,insertedi,deletedd
wherej。
教室编号=d.教室编号
end
go
十、参考文献
1.逯燕玲等.网络数据库技术.北京:
电子工业出版社,2007
2.李存斌.《数据库应用技术》-—SQLServer简明教程.水利水电出版社
3.周绪。
《SQLServer2000中文版入门与提高》。
清华出版社
4.宋振会.《SQLServer2000》中文版基础教程.清华出版社
5.张海藩,软件工程导论第四版,清华大学出版社,2003。
6.张海藩,软件工程导论学习辅导,清华大学出版社,2004.
7.史济民等,软件工程-原理、方法与应用,高等教育出板社,2004
8.孙家广,软件工程—理论、方法与实践,高等教育出板社,2006
9.陈明。
实用软件工程基础,清华大学出版社,2003.
10.殷人昆。
实用软件工程,清华大学出版社,2003.
11.宋波.UML面向对象技术与实践,科学出版社
12.陈元春《VisualBasic数据库编程》 北京:
清华大学出版社,2004
13.清汉计算机工作室《VisualBasic数据库开发实例》 北京:
机械工业出版社,2004
14.吴斌赵有珍《SQLServer应用与提高》 北京:
科学出版社,2005
15.王道荣《VisualBasic6数据库处理》北京:
中国铁道出版社,2004
16.付继彬《SQLServer入门与提高》北京:
清华大学出版社,2000
17.龚沛曾《VisualBasic简明教程》 北京:
高等教育出版社,2003
18.李萍《SQLServer2000应用开发教程》北京:
电子工业出版社,2004
网络数据库课程设计说明书
题目:
教室管理系统
姓名:
余少华
班级:
11020742
学号:
1102074215