学生宿舍管理系统设计与实现 - 图文 联系客服

发布时间 : 星期六 文章学生宿舍管理系统设计与实现 - 图文更新完毕开始阅读a3375d3b43323968011c92c9

江苏科技大学本科毕业设计(论文)

外来人员 n m 入住记录 入住 物品 m n 宿舍 n 使用 n 属于 n 属于 m n 物品 n n 组成 学生 m 1 属于 管理 楼栋 1 1 班级 n 属于 n 1 1 管理 辅导员 管理者 图 4-8 系统的总体E-R图

14

江苏科技大学本科毕业设计(论文)

4.2 逻辑结构设计

数据库逻辑设计是整个设计的前半段,包括所需的实体和关系,实体规范化等工作。设计的后半段则是数据库物理设计,包括选择数据库产品,确定数据库实体属性(字段)、数据类型、长度、精度确定、DBMS页面大小等。

数据库逻辑设计决定了数据库及其应用的整体性能,调优位置。如果数据库逻辑设计不好,则所有调优方法对于提高数据库性能的效果都是有限的。为了使数据库设计的方法走向完备,数据库的规范化理论必须遵守。规范化理论为数据库逻辑设计提供了理论指导和工具,在减少了数据冗余的同时节约了存储空间,同时加快了增、删、改的速度。

另外,在规范的数据库逻辑设计时,还应考虑适当地破坏规范规则,即反规范化设计,来降低索引、表的数目,降低连接操作的数目,从而加快查询速度。常用的反规范技术有增加冗余列、增加派生列、重新组表等。

增加冗余列:有时要进行查询的列分布在不同的表中,如果这个连接查询的频率比较高,那就可以根据需要,把其它表中的这一列加进来,从而使得多个表中具有相同的列,它常用来在查询时避免连接操作。但它的坏处就是需要更多的磁盘空间,同时因为完整性问题需要增加维护表的工作量。

总之,在进行数据库逻辑设计时,一定要结合应用环境和现实世界的具体情况合理地选择数据库模式。

通过进一步的分析得到如下关系模式:

学生表:(学号,姓名,性别,系部编号,班级号,年龄,宿舍号,辅导员名字)

维修登记表: (宿舍号,维修人员,报修原因,维修时间,维修原因,维修设备,维修数量,维修价格)

贵重物品表: (学生学号,学生姓名, 宿舍号,物品,物品数量)

外来人员登记表: (证件号码,证件类型,姓名,性别,进入时间,离开时间) 学生夜归表: (学生学号,学生姓名, 宿舍号,性别,夜归时间)

学生节假日出入记录表: (学生学号,学生姓名,宿舍号,性别,留校,离校时间,返校时间)

由上面的关系模式分析出如下的表结构:

15

江苏科技大学本科毕业设计(论文)

(1)学生信息表

学生信息表包括系部编号、班级、辅导员名字、学生学号、学生姓名、学生性别、学生年龄、学生电话、宿舍号、入住时间、搬出时间、备注等字段。学生信息表如表4-1所示:

表 4-1 学生信息表

列名 DepartmentId

Class ClassTeacher Stu_Number

Name Sex Age Tell Dor_Id InTime OutTime Remark

中文含义 系部编号 班 级 辅导员名字 学生学号 学生姓名 学生性别 学生年龄 学生电话 宿舍号 入住时间 搬出时间 备 注

数据类型 Nvarchar(50) Nvarchar(50)

Char Nvarchar(50)

Char Char Int Nvarchar(50)

Int Datetime Datetime Nvarchar(50)

空/非空 非空

非空 非空 非空 非空 非空 非空 非空 非空 非空 非空

约束条件 FK PK

(2)维修登记表

维修登记表包括了宿舍号、报修时间、维修时间、维修原因、维修人员、维修设备、维修数量、维修价格等字段。维修登记表如表4-2所示:

表 4-2 维修登记表

列名 Dor_Id ReportTime Rep_Time Rep_Reason Rep_Man Rep_Shebei Rep_Quantity Rep_Price Remark

中文含义 宿舍号 报修时间 维修时间 维修原因 维修人员 维修设备 维修数量 维修价格 备 注

数据类型 Int Datetime Datetime Nvarchar(50)

Char Char Nvarchar(50) Nvarchar(50) Nvarchar(50)

空/非空 非空 非空

非空 非空 非空 非空 非空

约束条件 PK

(3)贵重物品表

贵重物品表包括学生姓名、学生学号、宿舍号、物品、物品数量等字段。贵重物品表如表4-3所示:

16

江苏科技大学本科毕业设计(论文)

表 4-3 贵重物品表

列名 Name Stu_Number Dor_Id Goods Val_Quantity Remark

中文含义 学生姓名 学生学号 宿舍号 物 品 物品数量 备 注

数据类型 Char Nvarchar(50) Int

Nvarchar(50) Nvarchar(50) Nvarchar(50)

空/非空 非空 非空 非空

非空 非空

约束条件

PK FK

(4)外来人员登记表

外来人员登记表包括姓名、性别、证件类型、证件号码、进入时间、离开时间等字段。外来人员登记表如表4-4所示:

表 4-4 外来人员登记表

列名 Name Sex Documents Number AccessTime AwayTime Remark 中文含义 姓 名 性 别 证件类型 证件号码 进入时间 离开时间 备 注 数据类型 Char Char

Nvarchar(50) Nvarchar(50) Datetime Datetime Nvarchar(50) 空/非空 非空

非空 非空 非空 非空 非空 非空 约束条件 PK (5)学生夜归表

学生夜归表包括学生姓名、学生学号、性别、宿舍号、夜归时间等字段。学生夜归表如表4-5所示:

表 4-5 学生夜归表

列名 Name Stu_Number

Sex Dor_Id Time Remark

中文含义 学生姓名 学生学号 性 别 宿舍号 夜归时间 备 注

数据类型 Char Nvarchar(50)

Char Int Datetime Nvarchar(50)

空/非空 非空 非空 非空 非空 非空

约束条件

PK FK

(6)学生节假日出入记录表

学生节假日出入记录表包括学生姓名、学生学号、性别、宿舍号、留校、离校时间、返校时间等字段。学生节假日出入记录表如表4-6所示:

表 4-6 学生节假日出入记录表

17