1、教室管理课程设计说明书 摘 要在校园生活中,教室仍然是教学活动和学生课余活动中最主要的场所之一,然而,由于学生数目过大,教室资源有限限制了师生使用教室。以前,一些学校对教室的管理仅限于人工管理,处理起来比较复杂,容易出错,而且不利于删除和添加,更加不利于查找,凸显出建立教室安排系统的紧迫性。本系统着力于整合教室管理中的课程安排,教室调课,设备损坏及维修以及单位借用等影响教室使用的环节,实现统一管理。在此基础上提供方便有效的课表查询,空教室查询,学生出勤次数查询,设备维护记录查询.本系统针对教室管理不统一的问题,着力于将教室管理中的课程安排,教师调课,单位借用等联系起来,建立一个统一的管理系统,
2、以提高处理效率,方便统一管理,同时为师生提供方便的查询.教室安排系统使得教室的安排变得更加简单,添加与删除变得更加容易,特别是教室查找。此系统提高了信息处理的速度与准确性,能够及时准确有效的查询和修改教室的安排情况,以及更有效的对设备维护进行管理.关键词:数据库 教室管理 自动化处理 目录一、序言1二、教室系统的需求分析1三、概念结构设计1四、数据结构设计24.1数据流图24。2学生管理子系统:34。3教室查询子系统:54.4管理员管理子系统74。5后勤管理子系统:9五、数据库逻辑结构设计11六、数据库的实施13七、数据库运行与维护16八、VB程序的实现178。1登陆界面设计178。2系统管理
3、员界面设计188.3后勤服务人员界面设计198。4学生登陆界面208。5教室登陆界面设计20九、附录21创建数据库21创建表的基本信息21创建视图22创建存储过程23创建触发器23十、参考文献23一、序言在大学里,教室仍然是教学的主要场所,也是学生学习的重要场所,所以教室环境和设备直接影响到教学活动的开展和学生的学习。为了保证教室环境良好的运转,教室的管理也就显得十分的必要和重要。但是教室的管理也并不是一件很容易的事情.教室设备(尤其是多媒体设备)有所损坏必须及时登记,修复,否则很可能影响以后教学,造成教学事故。教室的使用具有一定的计划性和流动性,即一个班在相应的时间里,所上的课程和使用的教室
4、是固定的,但是不同的课程在不同的时间里会使用不同的教室,这与教务处的课程安排是密切相关的.尤其是使用多媒体教室的时候,这就显得比较麻烦.为了能够更系统的,更有序的,更合理的,更有效的进行教室管理,有必要利用计算机来处理各种信息,这也就需要一个更有效的教室管理系统.为此,经过较详细的调查和慎重的思考,我决定做一个教室管理系统,来解决这些问题,使管理简化,方便而且更有效。二、教室系统的需求分析处理对象:本系统总体上说涉及了五个方面的数据,后勤的信息,教室的信息,课程的信息,教师的信息,学生的信息。处理功能要求:教室管理系统的具体包括四个子系统:学生查询子系统,教师查询子系统,后勤管理子系统,管理员
5、管理子系统。学生登录界面的功能是查询教室信息,查询自己课程信息,更改自己账户信息;教师登陆界面的功能是查询教室信息,查询自己教授课程信息,更改账户信息;后勤登陆界面的功能是查询教室信息,包括设备故障情况,故障时间;管理员登陆界面的功能是查询并更改教室信息,包括设备故障情况,故障时间,是否空闲。安全性和完整性要求:在这个系统中涉及到了相关人员的问题,而且同一个职工可能在不同的表中存在,要考虑到,如果辞退或者某职工辞职,那么不仅要在职工信息表中删除相应的信息,还要在其他的相关表中删除信息,这就涉及到了安全性的问题,初步打算用一个触发器来解决这个问题。完整性也是一个重要的内容,它也涉及安全性上的问题
6、。三、概念结构设计图31教室管理系统ER图四、数据结构设计图4-1教室管理系统4。1数据流图图4-1-1教室管理系统功能模块图4。2学生管理子系统:图421学生查询子系统顶层数据流图图422底层数据流图数据字典:“学生”是该子系统一个重要的数据结构,可以如下描述:数据结构:学生含义说明:学生查询子系统的重要数据结构,定义了一个学生的有关信息组成:学号,姓名,性别,班级“教室”是该子系统另一个重要数据结构,可以如下描述:数据结构:教室含义说明:学生查询子系统的重要数据结构,定义了教室的有关信息组成:教室编号,教室信息“学号是该子系统一个重要的数据项,可以如下描述:数据项:学号含义说明:唯一标识每
7、个学生类型:varchar长度:10取值范围:00000000009999999999取值含义:前两位标识该学生所在年级,再三位标识所在学院,再三位标识所在班级,后两位按顺序编号“姓名”是该子系统重要数据项,可以如下描述:数据项:姓名含义说明:学生个人信息类型:varchar“性别是该子系统重要数据项,可以如下描述:数据项:性别含义说明:学生个人信息类型:varchar“班级”是该子系统重要数据项,可以如下描述:数据项:班级含义说明:标识学生所在集体类型:varchar长度:8取值范围:00000000-99999999取值含义:前两位标识学生所在年级,再三位标识所在学院,后三位按顺序编号“教
8、室编号”是该子系统另一重要数据项,可以如下描述:数据项:教室编号含义说明:唯一标识每个教室类型:varchar长度:5取值范围:0000099999取值含义:前两位标识楼号,后三位标识房号“教室信息是该子系统另一重要数据项,可以如下描述:数据项:教室信息含义说明:教室是否空闲,教室课程信息类型:varchar长度:2数据流“教室信息”可如下描述:数据流:教室信息说明:每个教室编号,教室是否空闲组成:教室信息=教室编号+是否空闲数据流来源:教务处数据流去向:学生查询数据存储“学生可如下描述:数据存储:学生说明:学生查询结果流入数据流:教室信息流出数据流:是否空闲,课程信息组成:教室是否空闲,课程
9、信息处理过程“学生查询服务可如下描述:处理过程:学生查询服务说明:为学生提供查询教室和课程信息服务输入:学号,姓名,教室编号输出:教室是否空闲,课程信息处理:审定是否符合查询目标后,学生自行决定学习情况4.3教室查询子系统:图431教师查询子系统顶层数据流图图43-2底层数据流图数据字典“教师”是该子系统一个重要的数据结构,可以如下描述:数据结构:教师含义说明:教师查询子系统的重要数据结构,定义了一名教师的有关信息组成:教师编号,姓名,性别,班级,年龄“教室”是该子系统另一个重要数据结构,可以如下描述:数据结构:教室含义说明:教师查询子系统的重要数据结构,定义了教室的有关信息组成:教室编号,教
10、室信息“教师编号”是该子系统一个重要的数据项,可以如下描述:数据项:教师编号含义说明:唯一标识每名教师类型:varchar长度:8取值范围:0000000099999999取值含义:前三位标识所在学院,再三位标识所在班级,后两位按顺序编号“姓名”是该子系统重要数据项,可以如下描述:数据项:姓名含义说明:教师个人信息类型:varchar“性别”是该子系统重要数据项,可以如下描述:数据项:性别含义说明:教师个人信息类型:varchar“班级是该子系统重要数据项,可以如下描述:数据项:班级含义说明:标识教师教授学生集体类型:varchar长度:8取值范围:0000000099999999取值含义:前
11、两位标识锁教授学生所在年级,再三位标识所在学院,后三位按顺序编号“教室编号”是该子系统另一重要数据项,可以如下描述:数据项:教室编号含义说明:唯一标识每个教室类型:varchar长度:5取值范围:0000099999取值含义:前两位标识楼号,后三位标识房号“教室信息是该子系统另一重要数据项,可以如下描述:数据项:教室信息含义说明:教室是否空闲,教室课程信息类型:varchar长度:2数据流“教室信息可如下描述:数据流:教室信息说明:每个教室编号,教室是否空闲组成:教室信息=教室编号+是否空闲数据流来源:教务处数据流去向:教师查询数据存储“教师可如下描述:数据存储:教师说明:学生查询结果流入数据
12、流:教室信息流出数据流:是否空闲,课程信息组成:教室是否空闲,课程信息处理过程“教师查询服务”可如下描述:处理过程:教师查询服务说明:为教师提供查询教室和课程信息服务输入:教师编号,姓名,教室编号输出:教室是否空闲,课程信息处理:审定是否符合查询目标后,教师了解自己教授情况,占用教室进行另外授课4.4管理员管理子系统图44-1管理员管理子系统顶层数据流图图442底层数据流图数据字典“管理员”是该子系统一个重要的数据结构,可以如下描述:数据结构:管理员含义说明:管理员管理子系统的重要数据结构,定义了一个管理员的有关信息组成:管理员编号,姓名,性别,年龄,负责教室“教室”是该子系统另一个重要数据结
13、构,可以如下描述:数据结构:教室含义说明:管理员管理子系统的重要数据结构,定义了教室的有关信息组成:教室编号,是否空闲,课程信息,上课班级,故障信息“管理员编号”是该子系统一个重要的数据项,可以如下描述:数据项:管理员编号含义说明:唯一标识每个管理员类型:varchar长度:10取值范围:00000000009999999999取值含义:按顺序编号“姓名”是该子系统重要数据项,可以如下描述:数据项:姓名含义说明:管理员个人信息类型:varchar“性别是该子系统重要数据项,可以如下描述:数据项:性别含义说明:管理员个人信息类型:varchar“年龄”是该子系统重要数据项,可以如下描述:数据项:
14、年龄含义说明:管理员个人信息类型:varchar长度:2取值范围:2050“负责教室是该子系统重要数据项,可以如下描述:数据项:负责教室含义说明:管理员负责的教室类型:varchar长度:5取值范围:00000-99999取值含义:前两位标识楼号,后三位标识房号“教室编号”是该子系统另一重要数据项,可以如下描述:数据项:教室编号含义说明:唯一标识每个教室类型:varchar长度:5取值范围:0000099999取值含义:前两位标识楼号,后三位标识房号“教室信息是该子系统另一重要数据项,可以如下描述:数据项:教室信息含义说明:教室是否空闲,教室故障信息类型:varchar“班级信息是该子系统另一
15、重要数据项,可以如下描述:数据项:班级信息含义说明:上课班级,班级学生人数类型:varchar“课程信息”是该子系统另一重要数据项,可以如下描述:数据项:课程信息含义说明:课程编号,课程名称类型:varchar数据流“教室信息”可如下描述:数据流:教室信息说明:负责教室的基本信息组成:教室信息=教室编号+是否空闲+故障情况+上课班级+班级学生人数数据流来源:教务处数据流去向:管理员管理子系统数据存储“管理员管理子系统可如下描述:数据存储:管理员管理子系统说明:管理员更新信息后录入该子系统流入数据流:教室信息流出数据流:教室信息组成:教室编号,是否空闲,课程信息,上课班级,故障信息处理过程“管理
16、员管理”可如下描述:处理过程:管理员对教室信息进行管理更新输入:管理员编号,姓名,教室编号输出:教室信息处理:审定是否有更新后,将更新内容录入管理员管理子系统4。5后勤管理子系统:图4-5-1后勤管理子系统顶层数据流图图4-5-2底层数据流图数据字典“后勤人员”是该子系统一个重要的数据结构,可以如下描述:数据结构:后勤含义说明:后勤查询子系统的重要数据结构,定义了一个后勤人员的有关信息组成:人员编号,姓名,性别,年龄,负责教室“教室”是该子系统另一个重要数据结构,可以如下描述:数据结构:教室含义说明:后勤查询子系统的重要数据结构,定义了教室的有关信息组成:教室编号,故障信息,卫生情况“人员编号
17、”是该子系统一个重要的数据项,可以如下描述:数据项:人员编号含义说明:唯一标识每个后勤人员类型:varchar长度:10取值范围:0000000000-9999999999取值含义:按顺序编号“姓名”是该子系统重要数据项,可以如下描述:数据项:姓名含义说明:后勤人员个人信息类型:varchar“性别”是该子系统重要数据项,可以如下描述:数据项:性别含义说明:后勤人员个人信息类型:varchar“年龄是该子系统重要数据项,可以如下描述:数据项:年龄含义说明:后勤人员个人信息类型:varchar长度:2取值范围:2050“负责教室”是该子系统重要数据项,可以如下描述:数据项:负责教室含义说明:后勤
18、人员负责的教室类型:varchar长度:5取值范围:0000099999取值含义:前两位标识楼号,后三位标识房号“教室编号是该子系统另一重要数据项,可以如下描述:数据项:教室编号含义说明:唯一标识每个教室类型:varchar长度:5取值范围:00000-99999取值含义:前两位标识楼号,后三位标识房号“教室信息”是该子系统另一重要数据项,可以如下描述:数据项:教室信息含义说明:教室故障信息,卫生信息类型:varchar数据流“教室信息”可如下描述:数据流:教室信息说明:负责教室的基本信息组成:教室信息=教室编号+故障情况+卫生情况数据流来源:教务处数据流去向:后勤人员管理子系统数据存储“后勤
19、人员”可如下描述:数据存储:后勤人员说明:后勤人员查询得到信息后进行故障处理流入数据流:教室信息流出数据流:教室信息组成:教室编号,故障信息,卫生情况处理过程“后勤人员管理可如下描述:处理过程:后勤人员查询教室信息输入:人员编号,姓名,教室编号输出:教室信息处理:审定是否有故障后,对教室故进行一系列故障处理,清扫卫生五、数据库逻辑结构设计教室(编号,人数,是否空闲,故障情况,故障时间,录入时间)主键为:编号。教师(教师编号,姓名,性别,年龄,职称)主键为:教师编号。课程(课程编号,课程名称,时间,教室,班级,教师)主键为:课程编号。学生(学号,姓名,性别,班级)主键为:学号后勤(职工编号,姓名
20、,性别,年龄,负责教室)主键为:职工编号表51教室信息数据属性数据项名数据类型长度非空主键教室编号varchar5非空主键教室人数varchar3非空故障情况varchar2空故障时间varchar20空是否空闲varchar2非空录入时间varchar20非空表5-2课程信息数据属性数据项名数据类型长度非空主键课程编号varchar10非空主键课程名称varchar30非空教室编号varchar5非空时间varchar20非空教师varchar20非空班级varchar40非空表53学生信息数据属性数据项名数据类型长度非空主键学号varchar10非空主键姓名varchar10非空性别var
21、char2非空班级varchar8非空表54后勤信息数据属性数据项名数据类型长度非空主键人员编号varchar20非空主键姓名varchar20非空性别varchar2非空年龄varchar2非空教室编号varchar5非空表55教师信息数据属性数据项名数据类型长度非空主键姓名varchar20非空主键性别varchar2非空职称varchar20非空年龄varchar2非空教师编号varchar20非空六、数据库的实施创建数据库图61创建数据库创建基本信息表图62创建基本信息表创建视图图63创建视图创建存储过程图64创建存储过程创建触发器图65创建触发器七、数据库运行与维护图71备份数据库(
22、1)图72备份数据库(2)八、VB程序的实现8.1登陆界面设计窗口设计图8-11登陆界面程序设计图812程序设计8.2系统管理员界面设计窗口设计图8-2-1管理员界面图82-2管理员界面(2)图82-3管理员界面(3)程序设计图8-24程序设计8。3后勤服务人员界面设计窗口设计图8-3后勤界面8.4学生登陆界面图84-1学生界面(1)图84-2学生界面(2)程序设计图8-4-3程序设计8。5教师登陆界面设计窗口设计图85教师界面九、附录创建数据库create database 教室数据库 创建教室数据库on primary( name=classroomdb_data, filename=d:
23、sqldataclassroomdb_data.mdf, size=5mb, maxsize=100mb, filegrowth=5mb)log on( name=classroomdb_log,filename=d:sqldataclassroomdb_log.ldf,size=5mb, maxsize=100mb,filegrowth=5mb)创建表的基本信息use教室数据库createtable登陆基本信息(账号varchar(20)notnull,密码varchar(20)notnull)gocreatetable教室基本信息(教室编号varchar(5)notnullprimaryk
24、ey,容纳人数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(2
25、0)notnullprimarykey,姓名varchar(20)notnull,性别varchar(2)notnull,年龄varchar(2)notnull,负责教室varchar(5)notnull, 值班时间 varchar(20)notnull)go创建学生基本信息表createtable学生基本信息(学号varchar(20)notnullprimarykey,姓名varchar(20)notnull,性别varchar(2)notnull,班级varchar(40)notnull)go-创建教师基本信息表createtable教师基本信息(教师编号varchar(20)notnu
26、llprimarykey,姓名varchar(20)notnull,性别varchar(2)notnull,年龄varchar(2)notnull,职称varchar(20)notnull)go创建视图use教室数据库gocreateview当日教室信息asselect j.教室编号, j。是否空闲, k。时间from dbo。教室基本信息as j INNERJOIN dbo。课程基本信息as k on j。教室编号= k。教室编号gocreateview故障教室信息asSELECT教室编号,故障情况,故障时间,录入日期AS录入时间FROM dbo.教室基本信息AS ggocreateview
27、后勤值班信息asSELECT姓名,值班时间,负责教室FROM dbo。后勤基本信息AS hgocreateview教师课程信息asSELECT J.教室编号, K。课程名称, K.班级, K。时间, K.教师FROM dbo。教室基本信息AS J INNERJOIN dbo.课程基本信息AS K ON J。教室编号= K.教室编号go创建存储过程use教室数据库goifexists(select name fromsysobjectswhere name=isbusyandtype=p)dropprocedure isbusygo-创建存储过程:找出空闲教室createprocedure is
28、busy asselect*from教室基本信息where教室基本信息.是否空闲=是goifexists(select name fromsysobjectswhere name=isgzandtype=p)dropprocedure isgz go-创建存储过程:找出故障情况教室createprocedure isgz asselectfrom教室基本信息where教室基本信息。故障情况=是go创建触发器use教室数据库ifexists(select name fromsysobjectswhere name =coursetrandtype=tr)droptrigger coursetrg
29、ocreatetrigger coursetr 在更新课程基本信息表中的是教室编号时,教室表中的是否空闲也被更新on课程基本信息forupdateasdeclare rows intselect rows=ROWCOUNTif rows 0ifUPDATE(教室编号)beginupdate j set j。教室编号=i。教室编号from教室基本信息 j,inserted i,deleted dwhere j。教室编号=d.教室编号endgo十、参考文献1 逯燕玲等网络数据库技术北京:电子工业出版社,20072 李存斌。数据库应用技术SQL Server简明教程.水利水电出版社3 周绪。SQL
30、Server2000中文版入门与提高.清华出版社4 宋振会。SQL Server2000中文版基础教程.清华出版社5 张海藩,软件工程导论 第四版,清华大学出版社,2003。6 张海藩,软件工程导论学习辅导,清华大学出版社,2004。7 史济民等,软件工程原理、方法与应用, 高等教育出板社,20048 孙家广,软件工程-理论、方法与实践,高等教育出板社, 20069 陈明。 实用软件工程基础,清华大学出版社,2003.10 殷人昆。实用软件工程,清华大学出版社,2003.11 宋波。UML面向对象技术与实践,科学出版社12 陈元春Visual Basic数据库编程北京:清华大学出版社,200413 清汉计算机工作室Visual Basic数据库开发实例北京:机械工业出版社,200414 吴斌 赵有珍SQL Server应用与提高北京:科学出版社,200515 王道荣Visual Basic 6数据库处理北京:中国铁道出版社,200416 付继彬SQL Server入门与提高 北京:清华大学出版社,200017 龚沛曾Visual Basic简明教程北京:高等教育出版社,200318 李萍 SQL Server2000 应用开发教程北京:电子工业出版社,200420