数据库课程设计学生宿舍管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库课程设计学生宿
舍管理系统
文稿归稿存档编号:[KKUY-KKIO69-OTM243-OLUI129-G00I-FDQS58-
学生宿舍管理系统课程设计
摘要:
学生宿舍管理系统是应对学生宿舍管理的现代化、网络化,逐步摆脱当前学生宿舍管理的人工管理方式,提高学生宿舍管理效率而开发的,它包括宿舍学生基本信息管理、楼道工人基本信息管理、宿舍楼基本信息管理、宿舍基本信息管理、宿舍事故基本信息管理、宿舍楼物品出入基本信息管理、宿舍楼保卫处基本信息管理、宿舍配备物品及处理管理等八大功能模块,并提供了对各功能模块的查询和更新功能,且这两种功能基本上是通过存储过程来实现的,其中宿舍学生基本信息管理、宿舍基本信息管理是系统开发的重点。
该系统开发由系统需求分析、概念设计、逻辑设计、数据库实施、系统调试和测试阶段组成。
目录
1、概述:
旧的手工纪录的宿舍管理方式已经不能适应高速发展的信息化时代,新的宿舍管理系统开发出来之后,学校的现有的宿舍信息管理将有很大的改观,由过去的人工方式转变为计算机方式,由效率低、数据冗余、易产生错误转变为检索迅速、查找方便、可靠性高、存储量大。这些优点能够极大地提高效率,也是学校科学化、正规化管理的重要条件。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库的存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。
2、课程设计的需求分析
2.1、设计任务:
学生宿舍是同学最为熟悉的领域,假定学校有多栋宿舍楼,每栋楼有多层,每层有多个寝室,每个寝室可住多名学生,学生宿舍管理系统对学校的学生宿舍进行规范管理,其管理的对象如下:
·宿舍信息:编号、楼层、床位数、单价等。
·学生:学号、姓名、性别、年龄、所在院系、年级、电话等。
每个宿舍最多可以住4位同学,每个同学只能在一个宿舍,不同宿舍的费用标准可以不同。不同院系、年级的同学可以住同一间宿舍。
2.1、设计要求:
系统要能够对宿舍、学生、住宿信息进行登记、调整,并能随时进行各种查询、统计等处理。包括:
·寝室分配:根据院系、年级分配寝室。
·学生管理:实现入住学生信息的登记、维护和查询功能。
·信息查询:按公寓楼号、学生姓名等查询住宿信息。
·出入登记(可选):对学生进出公寓的情况进行登记、实现基本的出入监控功能
3、概念结构设计
3.1、概念结构设计工具(E-R模型)
3.2、入住登记子系统(局部)
主要是学生入住的管理,包括学生入住的申请,查询是否存在该学生,查询是否有空余的宿舍以及宿舍的分配
可以通过这个系统来解决学生入住的申请和分配等各种问题
3.3、外出登记子系统
子系统描述
主要是学生外出的管理问题,包括学生外出的申请,外出的审核,外出的等级等为题。
说明
可以通过这个系统解决学生外出的登记的各种问题。
3.4、调整宿舍子系统
子系统描述
主要是学生宿舍的调整,宿舍表的更新问题。
分E-R图
可以通过这个系统解决学生宿舍的调整问题,包括宿舍的申请调整,调整原因的判断以及调整后宿舍表的更新问题。
3.5、宿舍智能分配子系统
主要是学生宿舍的分配问题。
可以通过这个子系统来分配学生的宿舍,包括按学院分配以及按年级分配。
3.6、信息查询子系统
主要是查询学生宿舍的问题。
可以通过子系统来查询学生的宿舍包括按公寓查询以及按学生名字查询。
3.7、总体E-R图
4、逻辑结构设计
4.1、关系数据模式
调整信息
4.2视图的设计
创建查看宿舍信息表的视图,其中应该包含宿舍的所有信息。并且应该按可用床位数递减
create view view_dorm
AS
SELECT top 100
[dorm_num],[flo],[bad_amount],[unit_price],[avi_bad]
FROM dorm_info order by avi_bad desc
创建按宿舍号查看住宿信息的视图,其中应包含住宿登记时的所有信息,并且按照宿舍号递减排列
create view view_stay_bydorm
AS
SELECT top 100 dorm_num,stu_num,have_in,in_date
FROM stay_info order by dorm_num desc
创建按学号查看住宿信息的视图,其中应包含住宿登记时的所有信息,并且按照宿舍号递减排列
create view view_stay_bystu
AS
SELECT top 100 dorm_num,stu_num,have_in,in_date
FROM stay_info order by stu_num desc
创建查看出入信息的视图,其中应包含出入登记时的所有信息,并且按照离开时间递减排列
create view view_io_info
as
SELECT top 100 stu_num,dorm_num,left_time,back_time, reason,over_time
FROM dbo.inout_info order by left_time
5、数据库物理设计与实施
5.1、数据库应用的硬件、软件环境介绍
电脑配置为AMD Athlon(速龙) II X2 260 双核处理器,2G内存,Windows XP 专业版 32位 SP3 ( DirectX 9.0c )操作系统,安装mysql 数据库服务做测试。
5.2、物理结构设计
考虑到索引能加快查询的速度,所以在需要经常进行查询的列创建索引。
其中学生信息的学号、宿舍信息的宿舍编号、入住信息中学生的学号和宿舍的编号,这几个列都需要创建索引。由于前两项已经是主键,所以无需额外创建索引。现在为后两项创建索引。
5.3、索引的设计
为入住信息中学生的学号和宿舍的编号创建索引: