收藏 分销(赏)

宿舍管理系统数据库设计.doc

上传人:快乐****生活 文档编号:4311861 上传时间:2024-09-05 格式:DOC 页数:13 大小:128.48KB
下载 相关 举报
宿舍管理系统数据库设计.doc_第1页
第1页 / 共13页
宿舍管理系统数据库设计.doc_第2页
第2页 / 共13页
点击查看更多>>
资源描述
目 录 摘 要 1 一、引 言 2 二、设计目的与任务 2 三、设计方案 2 1、需求分析 2 1.1宿舍管理子系统数据库的数据需求 2 1.2数据字典 3 1.3数据结构 5 1.4数据流 5 1.5数据存储 6 1.6处理过程 6 2、概念设计 7 2.1宿舍数据库中的实体集 7 2.2宿舍数据库中的联系集 9 2.3宿舍数据库中的E-R图 9 3、逻辑设计 9 4、数据库实现 10 4.1 建立数据库模式、视图及索引 10 4.2 装载数据 13 四、结 论 13 五、致 谢 13 六、参考文献 14 摘 要 随着计算机的普及,以及对计算机的广泛应用,使得计算机的技术正以日新月异的方式不断地进步,其中数据库技术的地位无疑是极为重要的。 学生宿舍管理子系统是应对学生宿舍管理的现代化、网络化,逐步摆脱当前学生宿舍管理的人工管理方式,提高学生宿舍管理效率而开发的,它包括基本信息管理、住宿管理、服务管理、来访者管理等四大功能模块。 该系统开发由需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、数据库实施与维护阶段等阶段组成。 关键词:数据库 宿舍管理 系统开发 Abstract With the popularity of computer, as well as to the widespread use of computers, the computer technology is changing the way to continue to progress, with the status of database technology is undoubtedly very important. The student's dormitory management subsystem is coping with the student's dormitory management modernization, network, and gradually get rid of the current student dormitory management of artificial management method, improve the student's dormitory management efficiency and development, it includes the basic information management, accommodation management, Service management, visitor management and so on four big function module. The system developed by demand analysis stage, concept structure design stage, logic structure design stage, physical structure design, implementation and maintenance stages database of such as stage stage. Keywords: database,dormitory management, system development 《数据库原理与应用》课程设计 --学生宿舍管理数据库设计 一、引 言 传统的管理方法已经不能适应现代社会的需要,因此采用电脑管理存储、管理等诸多环节已成为宿舍管理的先决条件,宿舍管理信息子系统是各大中小型宿舍所需要使用的一个管理系统。对于大型高校,需要完成对大量学生宿舍信息的存储、编制、管理等操作。然而,传统的人工管理模式已经远远不能满足有效、快捷地处理管理中产生的大量信息数据的需要,从而使得宿舍管理层无法及时、准确地掌握一线资料,继而影响对学生住宿及其他安排的有效管理。 根据自己组员的知识功底和能力水平择选了宿舍管理子系统。通过对宿舍管理子系统的开发设计,旨在了解数据库设计与维护流程,提高成员团队合作意识,调动个人学习积极性,感悟团队荣誉感。 二、设计目的与任务 通过本课程设计教学所要求达到的目的是:通过该课程设计,学习数据库设计工具的使用,搞清数据库设计的基本方法、步骤和数据库设计各阶段的任务,完成对某一小型数据库设计和相应文档的编写工作。使学生更加深入地掌握数据库系统分析与设计的基本概念和基本方法,提高从事数据库系统建设和管理工作的基本技能和能力。 三、设计方案 1、需求分析 1.1宿舍管理子系统数据库的数据需求 通过与宿舍数据库用户交谈等方式以及作者对学生宿舍的分析,可以得到宿舍数据库系统的数据需求。 ·入校时,每位同学都有唯一的学号,并被分配到指定的宿舍楼和指定的宿舍,也会有一个宿舍号,其入校时间就是他的入住时间。 ·每间宿舍都有唯一的楼号和宿舍号。入校时,宿舍会装公用电话机,相应地就有宿舍电话号码。 ·每幢宿舍都有驻楼阿姨和保洁阿姨的编号。 ·宿舍楼中经常出现财产的损坏,比如灯泡坏了,厕所的马桶出故障了等,这时,同学们需要将财产损坏情况报告给宿舍楼管理员,以便学校派人进行维修。这时,需要记录报修的宿舍号和损坏的财产编号,同时记录报修的时间和损坏的原因。当损坏的财产维修完毕后,应记录解决时间,表示该报修成功解决。 ·每幢宿舍对于每一次的人员来访都要做好相应的登记。包括来访者和被访者的信息。 1.2数据字典 住宿学生数据字典 属性名 类型 长度 备注 学号 char 8 住宿学生学号 姓名 Varchar 10 住宿学生姓名 性别 char 2 男/女 专业 Varchar 20 学生专业 联系方式 char 11 联系方式 员工数据字典 属性名 类型 长度 备注 员工号 char 4 员工姓名 Varchar 10 年龄 smallint 2 性别 char 2 职位 Varchar 20 联系方式 char 11 宿舍数据字典 属性名 类型 长度 备注 楼号 char 2 宿舍号 char 3 宿舍电话 char 12 可住人数 smallint 2 已住人数 smallint 2 临时设备租赁数据字典 属性名 类型 长度 备注 设备号 char 8 设备名 Varchar 20 租赁日期 Datetime 8 所租的日期 归还日期 Datetime 8 归还设备日期 租赁费用 decimal 5 租赁设备的费用 报修数据字典 属性名 类型 长度 备注 楼号 char 2 宿舍号 char 3 报修人宿舍号 物品号 varchar 8 报修物品编号 报修原因 char 50 物品损坏原因 提交日期 datetime 8 报修提交日期 解决日期 datetime 8 问题解决日期 报修费用 decimal 5 报修的费用 水电费数字字典 属性名 类型 长度 备注 楼号 char 2 宿舍号 char 3 月份 Varchar 4 用电量 decimal (5,2) 电费 decimal (5,2) 用水量 decimal (5,2) 水费 decimal (5,2) 来访者数字字典 属性名 类型 长度 备注 来访人姓名 Varchar 10 被访人姓名 Varchar 10 所属关系 Varchar 20 证件名称 Varchar 20 来访日期 Datetime 8 来访时间 Datetime 8 结束时间 Datetime 8 备注 Varchar 50 1.3数据结构 数据结构名 组成 学生住宿信息 学号,姓名,性别,专业,联系方式,入住时间 员工信息 员工号,姓名,年龄,性别,职位,家庭地址,联系方式 宿舍信息 楼号,宿舍号,宿舍电话,可住人数,已住人数 临时设备信息 设备号,设备名,租赁日期,归还日期,租赁费用 报修信息 楼号,宿舍号,物品号,报修原因,提交日期,解决日期,报修费用 水电费信息 楼号,宿舍号,月份,用电量,电费,用水量,水费 来访者信息 来访人姓名,被访人姓名,所属关系,证件名称,来访日期,来访时间,结束时间,备注 1.4数据流 数据流名 数据流来源 数据流去向 组成 登记报修信息 学生 报修信息表 报修信息 查询报修信息 报修信息表 管理员 报修信息 登记已修信息 管理员 报修信息表 已修信息 登记设备租赁信息 学生 设备租赁信息表 设备租赁信息 查询设备租赁信息 设备租赁信息表 学生 设备租赁信息 登记设备归还信息 管理员 管理员 设备归还信息 登记来访者信息 来访者 来访者信息表 来访信息 查询来访者信息 管理员 来访者信息表 来访信息 登记来访结束信息 管理员 来访者信息表 来访结束信息 1.5数据存储 数据存储名 输入的数据流 输出的数据流 组成 报修信息表 报修信息 已修信息 报修信息 报修信息 已修信息 设备租赁信息表 设备租赁信息 设备归还信息 设备租赁信息 设备租赁信息 设备归还信息 来访者信息表 来访信息 来访结束信息 来访信息 来访信息 来访结束信息 1.6处理过程 处理过程名 输入数据流 输出数据流 登记报修 报修信息 报修信息 查询报修 报修信息 报修信息 登记已修信息 已修信息 已修信息 登记设备租赁信息 设备租赁信息 设备租赁信息 查询设备租赁 设备租赁信息 设备租赁信息 登记设备归还信息 设备归还信息 设备归还信息 登记来访者信息 来访者信息 来访者信息 查询来访者信息 来访者信息 来访者信息 登记来访结束信息 来访结束信息 来访结束信息 2、概念设计 2.1宿舍数据库中的实体集 · 实体集学生信息,具有属性学号,姓名,性别,专业,联系方式 · 实体集员工信息,具有属性员工号,姓名,年龄,性别,职位,联系方式 · 实体集宿舍信息,具有属性楼号,宿舍号,宿舍电话,可住人数,已住人数 · 实体集临时设备信息,具有属性设备号,设备名,租赁日期,归还日期,租赁费用 · 实体集报修表信息,具有属性楼号,宿舍号,物品号,报修原因,提交日期,解决日期,报修费用 · 实体集水电费信息,具有属性楼号,宿舍号,月份,用电量,电费,用水量,水费 · 实体集来访者信息,具有属性来访人姓名,被访人姓名,所属关系,证件名称,来访日期,来访时间,结束时间,备注 2.2宿舍数据库中的联系集 ·入住,宿舍和学生间具有一对多联系; ·管理,宿舍和员工间具有多对多联系; ·来访,学生和来访者间具有一对多联系; ·租赁,学生和临时设备间具有一对多联系; ·用电,宿舍与水电费间具有一对多联系; ·维修,宿舍与报修表间具有一对多联系。 2.3宿舍数据库中的E-R图 根据2.1节和2.2节的讨论,我们可以给出学生宿舍的E-R图(见图1)。 图1宿舍数据库中的E-R图 3、逻辑设计 把图1的E-R图转换为关系模式,如下所示(有实下划线的为主码、虚下划线的为外码): 由于宿舍与学生是1:n关系,可以将其之间的联系与n端实体学生合并,宿舍和员工,学生和临时设备,学生和来访者也是1:n关系,同样也将其之间的联系与n端实体员工,临时设备,来访者合并,具体的基本E-R图向关系模型的转化如下: ·学生住宿表=(学号,姓名,性别,专业,入住时间,联系方式,楼号,宿舍号) ·宿舍表=(楼号,宿舍号,电话号码,可住人数,已住人数) ·员工表=(员工号,员工姓名,性别,年龄,职位,家庭地址,楼号) ·临时设备租赁表=(设备号,设备名,租赁日期,归还日期,租赁费用,学号) ·报修表=(楼号,宿舍号,物品号,报修原因,提交日期,解决日期,报修费用) ·水电费表=(楼号,月份,宿舍号,用电量,电费,用水量,水费) ·来访者表=(来访人姓名,被访人姓名,所属关系,证件名称,来访日期,来访时间,结束时间,学号) 4、数据库实现 4.1 建立数据库模式、视图及索引 创建数据库 create database 学生宿舍管理系统; go //创建表 use 学生宿舍管理系统 go Create table 宿舍表 ( 楼号 char(2), 宿舍号 char(3), primary key(楼号,宿舍号), 宿舍电话 char(12) not null, 可住人数 smallint not null, 已住人数 smallint not null, ); go Create table 学生住宿表 (学号 char(8) primary key, 姓名 varchar(10) not null, 性别 char(2) default '男' check(性别 in('男','女')), 专业 varchar(20) not null, 联系方式 char(11), 入住时间 datetime not null, 楼号 char(2) not null, 宿舍号 char(3) not null, foreign key(楼号,宿舍号) references 宿舍表(楼号,宿舍号), ); go Create table 员工表 (员工号 char(4) primary key, 员工姓名 varchar(10) not null, 年龄 smallint check(年龄>14 and 年龄<65), 楼号 char(2), 性别 char(2) check (性别 in('男','女')), 职位 varchar(20) not null, 联系方式 char(11), ); go Create table 设备租赁表 (设备号 char(8) primary key, 设备名 Varchar(20) not null, 租赁日期 Datetime not null, 归还日期 Datetime not null, 租赁费用 decimal(5,2) not null, 学号 char(8) foreign key references 学生住宿表(学号), ); go create table 报修表 (楼号 char(6) not null, 宿舍号 char(6) not null, 物品号 char(8) not null, 保修原因 char(50) not null, 提交日期 datetime not null, 解决日期 datetime not null, 保修费用 decimal(5,2) not null, ); go Create table 水电费表 (楼号 char(2) not null, 宿舍号 char(3) not null, 月份 Varchar(4) not null, 用电量 decimal(5,2) not null, 电费 decimal(5,2) not null, 用水量 decimal(5,2) not null, 水费 decimal(5,2) not null, ); go Create table 来访者表 (来访者姓名 varchar(10) not null, 被访者姓名 varchar(10) not null, 所属关系 Varchar(20) not null, 证件名称 Varchar(20) not null, 来访日期 Datetime not null, 来访时间 Datetime not null, 结束时间 Datetime not null, 备注 Varchar(50), 学号 char(8) foreign key references 学生住宿表(学号), ); Go 1.建立计科专业的学生住宿的视图 Create view 计科学生住宿表 As Select 学号,姓名,楼号,宿舍号 From 学生住宿表 Where 专业='计科'; Go 2.建立住在三号楼的学生信息的视图 Create view 三号楼学生住宿表 As Select 学号,姓名,专业 From 学生住宿表 Where 楼号='3'; Go 3.建立职位是管理员的员工信息的视图 Create view 管理员信息表 As Select * From 员工表 Where 职位='管理员'; Go 4.建立4月份各个宿舍的水电使用情况的视图 Create view 四月水电费表 As Select * From 水电费表 Where 月份='四'; 建立索引 create unique index 住宿_学号 on 学生住宿表(学号); create unique index 宿舍楼_宿舍号 on 宿舍表(楼号,宿舍号); Create unique index IX_员工号 on 员工表(员工号); 4.2 装载数据 Insert into 宿舍表 values('2','333','15243800000',4,4) Go Insert into 宿舍表 values('2','334','15243800001',4,4) go Insert into 学生住宿表 values('09408213','杨晨','男','计科', '15243801000',getDate(),'2','333') go Insert into 员工表 Values ('y001','叶玉',40,'27','女','清洁工','15243801000') go Insert into 员工表 Values('y003','李伟',34,'22','男','管理员','15243801000') go 四、结 论 通过这次学生宿舍管理系统课程设计,使我们对数据库设计的各个方面都加深了理解,了解到数据库是一环扣一环的,只有数字字典做好了,才能进行下面的E-R图设计,中途不能有办点马虎,也体会到把知识应用于实践是不容易的,同时也学生课本所没有的东西,一些问题也只有真正做设计的时候才会出现。 五、致 谢 在这次课程设计的撰写过程中,我们组得到了许多人的帮助。 首先我们要感谢老师在课程设计上给予我们的指导、提供给我们的支持和帮助,这是我们能顺利完成这次报告的主要原因,更重要的是老师帮我们解决了许多技术上的难题,让我们能把系统做得更加完善。在此期间,我们不仅学到了许多新的知识,而且也开阔了视野,提高了自己的设计能力。 其次,我们要感谢帮助过我们的同学,他们也为我们解决了不少我们不太明白的难题。同时也感谢学院为我们提供良好的做课程设计的环境。 最后再一次感谢所有在设计中曾经帮助过我们的良师益友和同学。 六、参考文献 [1]王珊,萨师煊.《数据库系统概论》[M].北京:高等教育出版社,2006.5 [2]何玉洁,李保安.《数据库系统教程》[M].北京:人民邮电出版社,2010.9 [3]Hoffer,J.A. 《现代数据库管理》[M].北京:清华大学出版社,2011.3 [4] [5] 12
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服