河南城建学院 数据库机房管理系统.docx
- 文档编号:17352991
- 上传时间:2023-07-24
- 格式:DOCX
- 页数:54
- 大小:453.47KB
河南城建学院 数据库机房管理系统.docx
《河南城建学院 数据库机房管理系统.docx》由会员分享,可在线阅读,更多相关《河南城建学院 数据库机房管理系统.docx(54页珍藏版)》请在冰点文库上搜索。
河南城建学院数据库机房管理系统
河南城建学院
《数据库原理》课程设计报告
课程名称:
《数据库原理》课程设计
设计题目:
机房管理系统
指导教师:
薛冰
班级:
学号:
学生姓名:
同组人员:
成绩:
评语:
计算机科学与工程学院
2015年6月
目录
第1章概述2
1.1选题的背景与意义2
1.2相关技术分析2
第2章系统功能设计3
2.1系统总体结构设计图3
2.2系统功能模块4
2.2.1模块一机器信息管理模块4
2.2.2模块二机房信息管理4
2.2.3模块三学生信息管理4
2.2.4模块四班级机房预约5
2.2.5模块五上机过程信息管理5
2.2.6模块六班级信息管理5
2.2.7模块七用户信息管理6
2.2.8模块八远程监控管理6
第3章数据库设计7
3.1需求分析7
3.1.1业务流程图7
3.1.2数据流程图8
3.1.3数据字典8
3.2概念结构设计10
3.2.1E-R图10
3.3逻辑结构设计14
3.3.1关系模式14
3.3.2范式的判定15
3.3.3子模式定义(视图)16
3.4物理结构设计18
3.4.1存储结构与存取方法18
3.4.2数据的易变与稳定部分18
3.4.3数据库、表建立的代码18
3.4.4视图、索引、触发器、存储过程的创建20
3.5数据库、表截图29
3.5.1备份还原策略32
3.5.2数据库运行结果33
3.5.3全部代码34
第4章结束语42
4.1心得体会42
参考文献42
第1章概述
1.1选题的背景与意义
随着社会科技的进步,我国高等教育也进入了快速发展阶段,大学招生规模也在不断的扩大,这大大促进了校园数字化的发展和学校机房的数量及规模也在不断的发生变化。
为了减轻老师的工作强度,提高学生的学习效率,就需要一个综合的机房管理系统。
从而达到节约时间,提高效率,方便准确快捷的目的,也为其自身的发展提供一个广阔的平台。
随着上机人数越来越多,传统的人工管理机房工作任务越来越重。
机房管理员工作劳动强度大而且容易出错。
因此,有必要开发一套新的机房管理系统,以提高机房的管理效率,为学生学习做好准备工作。
1.2相关技术分析
现在的许多大学里,公用的机房主要作用就是安排学生的课堂时间学习和空闲时间上机,但是在机房的开放方面就存在许多问题。
就拿我们的学校来说吧,只有机房管理员才能在课余时间在机房上机,普通学生是不能的。
而且在课程设计周会出现多个班安排一个机房的状况,使事情很复杂。
因此建立一套完备的机房管理体制,利用现代计算机和数据库开发技术来代替人工处理机房工作是很必要的。
这样可以减轻机房管理员的劳动强度,提高工作质量和效率,提高机房的利用率和机房管理水平,保证机房管理的稳定性和机房的良性运作,确保学生正常上机,提高机房的工作效率,使机房的利用率达到最大化,总结以上各种因素,在原有的机房管理体系下,开发了一个新的小型的机房管理系统。
本系统是基于本学期所学的数据库知识,利用SQLServer软件工具,根据已学知识,设计的一个机房管理系统,该系统是在原有的机房管理系统上做了一些改进,尽可能实现系统的可操作性,系统设计的合理性,使工作流程最短,界面使人耳目一新。
能满足一般高校机房管理的基本需求,实现学生上机过程的登记;实现机房信息、机器信息、学生信息的管理;实现班级及班级学生信息的管理;实现班级上机的预约,即设置各班级的上课时段。
避免机房分配重复情况的发生。
第2章系统功能设计
2.1系统总体结构设计图
远程关机
图2-1功能模块图
2.2系统功能模块
2.2.1模块一机器信息管理模块
“机器信息管理模块”主要用于对机器信息的操作,包括机器号,计算机IP地址,机房号等信息。
它主要是为了实现对机器信息的查询、添加和修改。
机器信息管理
信息删除
信息添加
信息修改
图2-2-1机器信息模块图
2.2.2模块二机房信息管理
“机房信息管理模块”主要用于对机房信息的操作,包括机房号、机房名、计算机数目等信息。
它主要是为了实现对机房信息的查询、添加和修改。
机房信息管理
信息删除
信息添加
信息修改
图2-2-2机房信息模块图
2.2.3模块三学生信息管理
“学生信息管理”主要用于提供对学生的各种信息的操作,包括姓名,学号,班级,性别等信息。
主要是为了实现对学生信息的各种操作。
学生信息管理
信息删除
信息添加
信息修改
图2-2-3学生信息模块图
2.2.4模块四班级机房预约
“班级机房预约模块”主要用于提供对预约信息的操作,包括机房号、上课时段、开始时间、结束时间和班级号。
主要是为了实现对预约信息的添加、编辑和修改。
班级机房预约管理
信息删除
信息添加
信息修改
图2-2-4班级机房预约图
2.2.5模块五上机过程信息管理
“上机过程登记信息模块”主要是用于提供对登记信息的各种操作,包括计算机IP、上机时间、下机时间和学号。
主要为了实现对该信息的添加、编辑、修改。
上机过程信息管理
信息删除
信息添加
信息修改
图2-2-5上机过程信息图
2.2.6模块六班级信息管理
“班级信息管理模块”用于对班级的各种信息的操作,包括机房号、上课时段、开始时间、结束时间和班级号。
主要是为了实现对这些信息的添加、编辑、修改。
班级信息管理
信息删除
信息添加
信息修改
图2-2-6班级信息图
2.2.7模块七用户信息管理
“用户信息管理模块”用于提供对用户的各种信息的操作,包括用户名,学号,密码等信息。
它主要是为了实现用户信息的添加、编辑、修改等功能。
用户信息管理
信息添加
信息修改
信息删除
图2-2-7用户信息图
2.2.8模块八远程监控管理
“远程监控管理模块”主要是用来对学生机远程操作,如远程关机,远程开机,远程截屏。
远程监控管理
远
程
重启
远
程
截屏
远
程
关
机
图2-2-8远程监控图
第3章数据库设计
3.1需求分析
3.1.1业务流程图
监控
信息表
图3-1-1业务流程图
3.1.2数据流程图
D2监控信息表
图3-1-2数据流程图
3.1.3数据字典
表1数据项列表
数据项编号
数据项
名称
数据项含义
与其他数据项的关系
存储结构
别名
1
Rno
机房号
同CRno
int
机房号
2
Rname
机房名
Char(10)
机房名
3
Rnumber
计算机数目
int
计算机数目
4
Rmanager
管理员
同Manager
Char(10)
管理员
5
Cip
计算机IP
同Xip
Char(20)
计算机IP
6
Cno
机器号
同Mcno
int
机器号
7
CRno
计算机所在机房号
同Rno
int
机房号
8
Cbrand
品牌
Char(20)
品牌
9
Cnote
备注
Varchar(100)
备注
10
Sno
学号
同Uno
int
学号
11
Sname
姓名
Char(10)
姓名
12
Sex
性别
Char(20)
性别
13
Scno
班级号
同Clno
int
班级
14
Clno
班级号
同OClno
int
班级号
15
Cltype
课程类型
Char(20)
课程类型
16
Clname
课程名称
Char(20)
课程名称
17
Teacher
任课教师
Char(10)
任课教师
18
Clnumber
人数
int
人数
19
Uname
用户名
Char(20)
用户名
20
Usno
用户学号
同Sno
int
学号
21
UPword
用户密码
Char(20)
密码
22
Orno
预约机房号
同Rno
int
机房号
23
Odate
上课时段
Char(20)
上课时段
24
Intime
上课时间
同Rintime
date
上课时间
25
Outtime
下课时间
同Routtime
date
下课时间
26
Ocno
预约班级号
同Clno
int
班级号
27
Rip
登记计算机IP
同Cip
Char(20)
计算机IP
28
Rintime
上机时间
同Intime
date
上机时间
29
Routtime
下机时间
同Outtime
date
下机时间
30
Rsno
登记学号
同Sno
int
学号
31
Mrno
监控机房号
同Rno
int
机房号
32
Mcno
监控机器号
同Cno
int
机器号
33
Manager
管理员
同Rmanager
Char(10)
管理员
表2数据结构列表
数据结构编号
数据结构名
数据结构含义
组成
1
Room
机房
Rno,Rname,Rnumber,Rmanager
2
Computer
计算机
Cip,Cno,CRno,Cbrand,Cnote
3
Student
学生
Sno,Sname,Sex,Scno
4
Class
班级
Clno,Clname,Cltype,Teacher,,Clnumber
5
Usertable
用户
Uname,Usno,UPword,
6
Order
预约信息
Orno,Odate,Intime,Outtime,Ocno
7
Record
登记信息
Rip,Rinttime,Routtime,Rcno
8
Monitor
远程监控
Mrnot,Mcno,Manager
表3数据流
数据流编号
数据流名
输入
输出
1
机器信息
信息查询
机器信息
2
用户信息
输入信息
验证
3
学生信息
信息添加
学生新信息
4
班级上级预约信息
信息统计
班级预约信息表
5
机房数据库
存储预约信息表
信息统计
表4数据存储
存储名:
机房
描述:
机房的信息
别名:
组成:
机房号,机房名,计算机数目,管理员,计算机IP,品牌,备注,机器号
表5处理过程
处理过程名
输入数据流
输出数据流
添加用户信息
当前用户信息
用户当前信息
查询用户信息
用户当前信息
用户基本信息
班级预约
当前班级基本信息
预约成功
预约机房号
查询学生信息
学生当前信息
学生基本信息
远程监控
终端
管理员基本操作
3.2概念结构设计
3.2.1E-R图
1.属性图
管理员
图3-2-1机房属性图
备注
图3-2-2计算机属性图
班级
图3-2-3学生属性图
人数
图3-2-4班级属性图
密码
图3-2-5用户属性图
远程截屏
图3-2-6远程监控属性图
2.局部E-R图
属于
使用
管理
上课
管理
任课
监控
3.初步E-R图
(1)经过对以上局部E-R图分析汇总,可得到初步E-R图如下所示:
课程号
图3-2-7初步E-R图
(2)修改过程
局部E-R图,生成总E-R图时,各个子系统的局部应用面向问题不同,导致各个实体和实体的属性之间的冲突,因此合并时必须消除这些冲突:
●属性冲突和结构冲突:
因为设计分E-R图前有过充分讨论,所以没有出现属性冲突和结构冲突。
●结构冲突:
“班级”是一个实体,但是在实体“学生”中却变成了一个属性,所以在合并E-R图时,应以“班级号”作为“学生”的一个属性。
消除不必要的冗余
实体之间具有明确完整的关系,多余的关系将导致维护的困难和破坏数据库的完整性。
由于某些联系可以导出其它的联系,这种联系可以被消除。
如实体“计算机”中的“机房号”可由“属于”“机房”导出,所以其可以在总E-R图中消除。
而在消除结构冲突的过程中,实体“学生”的属性中产生了一个“班级号”,其可以由“拥有”“班级”导出,所以其可以在总E-R图中消除。
4总E-R图
课程号
图3-2-8总E-R图
3.3逻辑结构设计
3.3.1关系模式
由系统基本E-R图可得到如下几种关系模式:
机房(机房号,机房名,计算机数目,管理员)
计算机(计算机IP,机器号,机房号,品牌,备注)
学生(学号,姓名,性别,班级号)
班级(班级号,课程类型,课程名称,任课教师,课程号)
用户(用户名,学号,密码)
班级机房预约(机房号,上课时段,开始时间,结束时间,班级号)
学生上机过程登记(计算机IP,日期,上机时间,下机时间,学号
属于(计算机IP,机房号)
上课(班级号,机房号)
上机(学号,计算机IP)
拥有(学号,班级号)
3.3.2范式的判定
(1)机房关系模式为第二范式:
主关系键与非主属性之间存在着函数依赖(机房号→机房名)、(机房号→计算机数目)、(机房号→管理员),非主属性间又存在函数依赖(机房名→计算机数目)(机房名→管理员),所以机房关系模式为第二范式。
(2)计算机关系模式为第三范式:
其每个非主属性都完全函数依赖于主关系键计算机IP,而且非主属性间并不存在函数依赖,所以属于第三范式。
(3)学生关系模式为第三范式:
其每个非主属性都完全函数依赖于主关系键学号,而且非主属性间并不存在函数依赖,所以属于第三范式。
(4)班级关系模式为第三范式:
其每个非主属性都完全函数依赖于主关系键班级号,而且非主属性间并不存在函数依赖,所以属于第三范式。
(5)用户关系模式为第二范式:
主关系键与非主属性之间存在着函数依赖(用户名→学号)、(用户名→密码),非主属性间又存在函数依赖(学号→密码),所以其为第二范式。
(6)班级机房预约关系模式为第三范式:
其每个非主属性都完全函数依赖于主关系键机房号和上课时段,而且非主属性间并不存在函数依赖,所以属于第三范式。
(7)学生上机过程登记关系模式为第三范式:
其每个非主属性都完全函数依赖于主关系键计算机IP和日期,而且非主属性间并不存在函数依赖,所以属于第三范式。
(8)属于关系模式为第三范式:
主关系键与非主属性之间存在着函数依赖(计算机IP→机房号),非主属性只有一个,所以为第三范式。
(9)上机关系模式为第一范式:
其只存在主关系键,无非主属性,所以为第一范式。
(10)拥有关系模式为第三范式:
主关系键与非主属性之间存在着函数依赖(学号→班级号),非主属性只有一个,所以为第三范式。
3.3.3子模式定义(视图)
表6机房(Room)
字段名
数据类型
能否为空
是否为主键
说明
Rno
int
否
是
机房号
Rname
char(10)
否
否
机房名
Number
Smallint
能
否
计算机数目
Manager
char(10)
否
否
管理员
表7计算机(Computer)
字段名
数据类型
能否为空
是否为主键
说明
IP
Char(20)
否
是
计算机IP
Cno
smallint
否
否
编号
Rno
Int
否
否
机房号
Brand
Cahr(20)
能
否
品牌
Note
Vachar(100)
能
否
备注
表8学生(Student)
字段名
数据类型
能否为空
是否为主键
说明
Sno
int
否
是
学号
Sname
char(10)
否
否
姓名
Sex
char()2
能
否
性别
Cno
int
能
否
班级号
表9班级(Class)
字段名
数据类型
能否为空
是否为主键
说明
Clno
int
否
是
班级号
Clname
char(20)
否
否
课程名称
Cltype
char(20)
否
否
课程类型
Teacher
char(10)
否
否
任课教师
Clnumber
smallint
能
否
人数
表10用户(Usertable)
字段名
数据类型
能否为空
是否为主键
说明
Uname
Char(20)
否
是
用户名
Sno
Int
否
否
学号
Pword
Char(20)
否
否
密码
表11预约(Order)
字段名
数据类型
能否为空
是否为主键
说明
Orno
Int
否
是
预约机房号
Odate
Date
否
否
上课时段
Intime
Date
否
否
上课时间
Outtime
date
否
否
下课时间
Ocno
Int
否
否
预约班级号
表12登记(Record)
字段名
数据类型
能否为空
是否为主键
说明
Rip
Char(20)
否
是
登记计算机IP
Rintime
Date
否
否
上机时间
Routtime
Date
能
否
下机时间
Rcno
Int
否
否
登记学号
表13监控(Monitor)
字段名
数据类型
能否为空
是否为主键
说明
Mrno
int
否
是
监控机房号
Mcno
int
否
否
监控机器号
Manager
Char(10)
否
否
机房管理员
3.4物理结构设计
3.4.1存储结构与存取方法
经过分析可知,在设计的这个机房管理系统中信息的处理特点如下:
1.学生,用户,班级,上机预约这四个模块的数据不仅要经常查询,总结,而且由于计算机系的专业需要,每天上机的班级也比较多,所以相对来说这些数据也会更新的很快,例如,上级预约信息,用户信息的查询,登记等。
2.相应模块的信息要求能够共享,如学生学号和把班级号等。
3.远程监控模块与前几个模块相比有些不同,远程截屏,远程重启,远程关机等,这与上述几个比较类似的模块相比是加强系统安全,也占有很重要的地位。
4.对于学生,用户,班级,上级预约这四个模块的各个关系的最经常的操作是查找,例如有n个机房,如果采取顺序查找,平均查找n/2次;建立A+树索引,则平均查找次数为A+树的层数log2n+1。
3.4.2数据的易变与稳定部分
易变的部分:
学生(学号、姓名、性别、班级)
班级(班级号、课程类型、课程名称、任课教师、人数)
用户(用户名、学号、密码)
上级预约(机房号、上课时段、开始时间、结束时间、班级号)
稳定的部分:
机房信息(机房号、机房名、计算机数目、管理员)
计算机信息(计算机IP、机器号、机房号、品牌、备注)
监控信息(机房号,机器号,管理员)
3.4.3数据库、表建立的代码
创建数据库Room(机房管理系统)
CREATEDATABASERoom
ONPRIMARY
(
NAME='Room.mdf',
FILENAME='D:
数据库',
SIZE=10MB,
MAXSIZE=30MB,
FILEGROWTH=5MB
)
LOGON
(
NAME='Room.ldf',
FILENAME='D:
数据库',
SIZE=1MB,
FILEGROWTH=10%
)
2、创建表
(1)Room(机房表)的建立
CREATETABLERoom
(
RnoINTNOTNULLPRIMARYKEY,
RnameCHAR(10)NOTNULL,
RnumberINTNULL,
RmanagerCHAR(10)NOTNULL
)
(2)Computer(计算机表)的创建
CREATETABLEComputer
(
CipCHAR(20)NOTNULLPRIMARYKEY,
CnoINTNOTNULL,
CrnoINTNOTNULL,
CbrandChar(20)NULL,
CnoteVarchar(100)NULL
)
(3)Student(学生表)的创建
CREATETABLEStudent
(
SnoINTNOTNULLPRIMARYKEY,
ScnoINTNOTNULL,
SnameCHAR(10)NOTNULL,
SexCHAR(20)NULL,
CHECK(Sex='男'ORSex='女')
)
(4)Class(班级表)的创建
CREATETABLEClass
(
ClnoINTNOTNULLPRIMARYKEY,
CltypeChar(20)NOTNULL,
ClnameChar(20)NOTNULL,
TeacherChar(10)NOTNULL,
ClnumberINTNULL
CHECK(ClnumberBETWEEN0AND100)
)
(5)User(用户表)的创建
CREATETABLEUsertable
(
UnameChar(20)NOTNULLPRIMARYKEY,
UsnoINTNOTNULL,
UPwordChar(20)NOTNULL
)
(6)Scheduled(班级机房预约表)的创建
CREATETABLEScheduled
(
OcnoINTNOTNULL,
OrnoINTNOTNULL,
OdateCHAR(20)NOTNULL,
IntimeDATETIMENOTNULL,
OuttimeDATETIMENOTNULL
CONSTRAINTSc_PrimPRIMARYKEY(Orno,Odate)
)
(7)Record(上机过程登记表)的创建
CREATETABLERecord
(
RipCHAR(20)NOTNULL,
RcnoINTNOTNULL,
RintimeDATETIMENOTNULL,
RouttimeDATETIMENOTNULL,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 河南城建学院 数据库 机房管理系统 河南 城建 学院 机房 管理 系统