数据库设计期末——学生宿舍管理系统

1 需求分析

学生宿舍管理系统主要满足三类用户的需求,分别是管理人员(设置为系统管理员)、宿管员及学生,三类用户所具有的操作权限及操作内容是有所区别的。学生宿舍管理系统中系统管理员可以对学生入住个人信息、学生宿舍更改信息和退宿信息等进行有效的管理和维护,包括增加、删除和修改等基本的操作和维护功能以及灵活的查询功能。入住新生与老生都能够对个人的基本信息、退宿和宿舍更改等所涉及的相关信息进行查询、更新等操作。

具体的需求分析如下。

系统管理员:

1)维护学生入住登记的个人基本信息。实现对学生入住登记个人信息的添加、删除和更新等。学生入住信息包括学生的学号、姓名、性别、专业、院系、年龄、电话、育人导师姓名、育人导师电话、学业导师姓名、学业导师电话、宿舍号等。

2)权限管理。系统管理员可以设置不同用户的权限,确保操作的安全性和规范性。

3)配置系统参数。系统管理员可以配置系统的基本参数,如默认分配原则、费用标准等。

4)备份与修复。系统管理员可以定期备份学生入住的基本信息数据,确保数据安全,并在需要时进行数据恢复。

5)日志管理。系统管理员可以查看系统的操作日志,记录每次操作的时间、操作人员和操作内容。

6)系统监控和性能优化。系统管理员可以监控系统的运行状态,确保系统的稳定性和性能,而且系统管理员还可以进行性能优化,提高系统的响应速度和处理能力。

学生用户:

1)查询和修改学生的个人信息:如电话、紧急联系人等。

2)查看入住信息。学生可以查看自己的入住信息,包括寝室号、室友信息等。

3)提交入住申请。新生可以提交入住申请,填写个人信息,等待管理员审核和分配寝室。

4)查询空余床位。学生可以查询各宿舍楼、楼层的空余床位情况,选择合适的寝室。

5)更换寝室申请。学生因特殊原因需要更换寝室时,可以提交更换申请,说明理由。

6)查询费用明细。学生可以查询自己的住宿费、水电费等费用明细,支持按月份、学期等条件查询。

7)在线缴费。学生可以通过系统在线缴纳各项费用,支持多种支付方式。

8)保修申请。学生可以拨打保修电话描述宿舍设施的保修申请,包括故障描述、预约维修时间等。

9)查看公告通知。学生可以在管理系统中查看宿舍管理的相关公告和通知,如宿舍检查时间、安全提示等。

宿管员:

1)宿舍分配。宿管员可以选择手动分配或者自动分配给学生合适的宿舍。

2)学生管理。宿管员可以录入新入住学生的个人信息,生成入住记录;还可以修改学生的个人信息,如更换寝室、更新联系方式等。宿管员还可以查询学生的入住信息,包括当前居住的寝室号、入住时间和室友信息等。

3)出入登记。宿管员可以记录学生的进出公寓情况,包括进出时间、进出次数等。

4)费用查询和统计。宿管员可以查询每个宿舍的费用情况,生成详细的费用报表。

还可以按宿舍楼、楼层、寝室等条件进行费用统计。

5)处理保修申请、查看维修记录。宿管员可以查看和处理学生的报修请求,记录维修进度和结果。还可以记录宿舍设施的维护情况,包括维修时间、维修人员、维修结果等。

6)发布公告通知。宿管员可以发布宿舍管理的相关公告和通知,如宿舍检查时间、安全提示等。

学生宿舍管理的基本规定如下:每个宿舍必须有一个唯一的编号,用于标识和管理;每栋宿舍楼分为若干层,每层有若干个寝室,楼层编号保持连续;不同宿舍的费用标准可以不同,具体收费标准由学校统一制定;新生入学时,宿管员根据学生的院系和年级,按照分配原则进行寝室分配;学生中途需要更换寝室时,应向宿管员提出申请,说明理由,经批准后方可调整;不同院系、年级的同学可以住同一间宿舍。

2 概念结构设计

2.1 抽象出系统的实体

根据分析,宿舍管理系统主要包括学生、宿舍、宿管员三个实体。另外除了这三个实体之外,还有其他实体集,如维修信息表、卫生检查表、水电收费表等。其中学生在入住时需要登记入住信息,学号是学生实体的主键,其基本属性主要有学号,姓名,性别,院系,班级,联系方式,宿舍号等;学生入住时所在楼层、宿舍号是唯一的,其主要属性有宿舍号、楼层号、可容纳人数,入住学生姓名等;一个宿管员可以管理多个宿舍,宿管员的主要属性有工号、姓名、性别、年龄、联系电话等。实体之间的关系为:一个宿舍可以容纳多个学生,一个宿管员也可以管理多个宿舍,学生入住的宿舍是唯一的。

根据上述分析,可以得到各个局部的E-R图,有学生实体、宿舍实体、宿管员实体、维修实体、卫生检查实体、水电收费实体、以及学生出入实体,它们分别如下图所示:

2.2 设计分E-R图

根据2.1对每一个实体集所有属性的分析,可以得到各实体集之间的约束关系,它们之间的联系分E-R图分别如下图所示:

 首先是学生与宿舍的关系,如下图:

2.3 合并各分E-R图,生成初步E-R图

2.4 系统全局E-R图

对初步的E-R图加以分析,发现维修关系图未体现,经过改造得到更加系统的全局E-R图如下图所示:

3 逻辑结构设计

数据库的逻辑结构设计是根据概念结构设计的全局E-R图,按照转换规则将E-R图转换成数据模型的过程。它主要包括三个步骤:首先,将E-R图中的实体、属性和联系转换为关系数据库中的表、字段和约束;其次,对转换后的关系模式进行规范化处理,确保数据的一致性和完整性;最后,将优化后的关系模式具体化为数据库表结构,包括表的定义、字段的定义、主键和外键的设置等,确保数据库设计既满足功能性需求,又具有良好的性能和可维护性。

3.1 E-R图转换为关系模型

E-R图中实体应该单独提取出来作为一个关系模式,其中主键应用下划线标出。

首先,从E-R图中识别出所有的实体和联系,并将其转化为关系模式。每个实体对应一个关系模式,每个联系也对应一个关系模式。以下是具体的转化过程:

1.学生(Student)

属性:学号、姓名、性别、院系、班级、联系方式

主键:学号

2.宿舍(Dormitory)

属性:宿舍号, 宿舍类型, 可容纳人数, 剩余床位数, 楼层号

主键:宿舍号

3.宿管员(Manager)

属性:工号, 姓名, 性别, 联系方式

主键: 工号

4.维修工 (Repairman)

属性:维修工姓名, 联系方式

主键: 维修工姓名

5.卫生检查 (SanitationCheck)

属性: 检查编号, 检查时间, 宿舍楼号, 检查人员, 检查总评

主键: 检查编号

6.收费记录 (ChargeRecord)

属性: 记录编号, 记录时间, 宿舍楼号, 每学期用水量, 每学期用电量, 水电费单价, 电费用单价, 总费用

主键:记录编号

7.出入登记 (EntryExitRegister)

属性: 登记编号, 外出时间, 回归时间, 联系方式, 宿舍号

主键: 登记编号

8.维修记录 (RepairRecord)

属性: 报修单号, 预约上门时间, 报修设施, 报修宿舍号

主键: 报修单号

3.2 关系模式优化

接下来,我们对这些关系模式进行规范化处理,确保它们满足第三范式(3NF)。

其中,第一范式到第四范式的含义如下:

第一范式(1NF):所有字段都是原子的,不可再分。

第二范式(2NF):消除非主属性对部分键的依赖。

第三范式(3NF):消除非主属性对主键的传递依赖。

第三范式(3NF):消除非主属性对主键的传递依赖。

这里主要是检查是否存在部分依赖和传递依赖,并消除它们。

1.学生——宿舍关系模式

     原始关系模式: 学生 (Student)

学号 (StudentID) [PK]

姓名 (Name)

性别 (Gender)

                    联系方式 (Contact)

                  院系 (Department)

                    班级 (Class)

                    宿舍号 (DormitoryID) [FK]

     规范化处理:部分依赖:无   传递依赖:无

     最终关系模式: 学生 (Student)

学号 (StudentID) [PK]

姓名 (Name)

性别 (Gender)

                    联系方式 (Contact)

                  院系 (Department)

                    班级 (Class)

学生宿舍 (StudentDormitory)

学号 (StudentID) [PK, FK]

                  宿舍号 (DormitoryID) [PK, FK]

2.宿管员——宿舍关系模式

         原始关系模式:宿管员 (Manager)

                       工号(ManagerID)

                       姓名(Name)

                       性别:(Gender)

                       联系方式(Contact)

                       宿舍号 (DormitoryID) [FK]

          规范化处理:部分依赖:无   传递依赖:无

          最终关系模式:宿管员 (Manager)

工号 (ManagerID) [PK]

姓名 (Name)

性别 (Gender)

联系方式 (Contact)

宿管员宿舍 (ManagerDormitory)

工号 (ManagerID) [PK, FK]

宿舍号 (DormitoryID) [PK, FK]

3.维修工——维修记录关系模式

        原始关系模式:  维修工 (Repairman)

                        维修工姓名 (RepairmanName) [PK]

                        维修工联系方式(Contact)

维修记录 (RepairRecord)

报修单号 (RepairID) [PK]

预约上门时间 (AppointmentTime)

报修设施 (Facility)

报修宿舍号 (DormitoryID) [FK]

维修工姓名 (RepairmanName) [FK]

          规范化处理:部分依赖:无   传递依赖:无

          最终关系模式: 维修工 (Repairman)

                        维修工姓名 (RepairmanName) [PK]

                        维修工联系方式(Contact)

维修记录 (RepairRecord)

报修单号 (RepairID) [PK]

预约上门时间 (AppointmentTime)

报修设施 (Facility)

报修宿舍号 (DormitoryID) [FK]

维修工姓名 (RepairmanName) [FK]

4.卫生检查——宿舍关系模式

           原始关系模式: 卫生检查 (SanitationCheck)

  检查编号 (CheckID) [PK]

检查时间 (CheckTime)

宿舍楼号 (DormitoryBuilding) [FK]

检查人员 (Inspector)

检查总评 (OverallRating)                  

          规范化处理:部分依赖:无   传递依赖:无

          最终关系模式: 卫生检查 (SanitationCheck)

  检查编号 (CheckID) [PK]

检查时间 (CheckTime)

宿舍楼号 (DormitoryBuilding) [FK]

检查人员 (Inspector)

检查总评 (OverallRating)           

5.收费记录——宿舍关系模式

原始关系模式:收费记录 (ChargeRecord)

             记录编号 (RecordID) [PK]

             记录时间 (RecordTime)

             宿舍楼号 (DormitoryBuilding) [FK]

            每学期用水量 (WaterUsage)

            每学期用电量 (ElectricityUsage)

            水电费单价 (WaterRate)

电费用单价 (ElectricityRate)

            总费用 (TotalCost)

因满足第三范式的要求,故保持原始关系模式不变。

6.出入登记——宿舍关系模式

             原始关系模式: 出入登记 (EntryExitRegister)

登记编号 (RegisterID) [PK]

外出时间 (OutTime)

回归时间 (ReturnTime)

联系方式 (Contact)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小白上线*^_^*

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值