学生宿舍管理系统数据库课程设计..docx

上传人:叶*** 文档编号:50257246 上传时间:2022-10-14 格式:DOCX 页数:22 大小:49.64KB
返回 下载 相关 举报
学生宿舍管理系统数据库课程设计..docx_第1页
第1页 / 共22页
学生宿舍管理系统数据库课程设计..docx_第2页
第2页 / 共22页
点击查看更多>>
资源描述

《学生宿舍管理系统数据库课程设计..docx》由会员分享,可在线阅读,更多相关《学生宿舍管理系统数据库课程设计..docx(22页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、目录目录摘要.1一 需求分析.11.1 需求分析.11.1.1 基本信息.11.1.2 用户对系统要求.21.2 系统功能分析:.21.3 业务流程概述.31.4 数据流程图.41.5 数字字典.61.5.1 数据项.61.5.2 数据结构.81.5.3 数据流.81.5.4 数据存储.91.5.5 处理过程.9二 概念结构设计.9三 逻辑结构设计.103.1 逻辑设计的任务和目标.103.2 数据组织.103.2.1 将 E-R 图转换为关系模型.103.2.2 逻辑结构定义.10四 物理结构设计.124.1 物理设计阶段的目标与任务.124.2 数据存储方面.12五 数据实施和维护.135

2、.1 建立数据库、数据表、视图、索引、导入数据.135.1.1 建立数据库.135.1.2 建立数据表.135.1.3 建立视图.145.1.4 建立索引.155.1.5 导入数据.155.2 记录和约束条件的的增加、删除和修改.175.2.1 记录的增加、删除、修改.175.2.2 约束条件的增加、删除、修改.185.3 查询语句.18六 总结.19附件.20数据库课程设计-学生宿舍管理系统1摘要摘要学生宿舍管理系统是应对学生宿舍管理的现代化、网络化,逐步摆脱当前学生宿舍管理的人工管理方式,提高学生宿舍管理效率而开发的,它包括 1.用户管理(报修人,维修人,管理员)2.信息管理(报修,维修)

3、3.信息统计 4.日常维护管理 5.公告等等该系统开发由需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、物理结构设计阶段、数据库实施与维护阶段等阶段组成。一一 需求分析需求分析目前,我们学校的宿舍管理都是由人工管理的,信息都是由文本记录的。针对这一实际情况,我们设计了学生宿舍管理系统。1.1 需求分析需求分析经过实际分析调查,一个学生宿舍管理系统主要是要方便宿舍管理人员的工作,提高其工作效率,不仅可以方便广大学生,而且还可以方便于教师和相关人员。1.1.1 基本信息基本信息学生住在宿舍楼中,每幢宿舍楼都会有若干名老师负责本宿舍楼的日常管理和维护。(1)学生的基本信息:入校时,每位同学都有唯一

4、的学号,并被分配到指定的宿舍楼和指定的宿舍,也会有一个宿舍号,其入校时间就是他的入住时间。(2)宿舍的基本信息:每间宿舍都有唯一的楼号和宿舍号,入校时,宿舍会装公用电话机,相应地就有宿舍电话号码。(3)工作人员基本信息:每幢宿舍都有驻楼阿姨和保洁阿姨的编号。(4)报修的基本信息:宿舍楼中经常出现财产的损坏,比如灯泡坏了,厕所的马桶出故障了等,这时,同学们需要将财产损坏情况报告给宿舍楼管理员,以便学校派人进行维修。这时,需要记录报修的宿舍号和损坏的财产编号,同时记录报修的时间和损坏的原因。当损坏的财产维修完毕后,应记录解决时间,表示该报修成功解决。数据库课程设计-学生宿舍管理系统21.1.2 用

5、户对系统要求用户对系统要求1、信息要求:、信息要求:宿舍楼管理员能查询上面提到的宿舍楼的所有相关信息,包括某一学号的学生在宿舍楼中住宿的详细信息,报修的所有信息和来访者的信息,以利于对整个宿舍楼的全面管理。2、处理要求:、处理要求:当学生基本信息发生变化时,宿舍楼管理员能对其进行修改。比如,某些同学搬到其他的宿舍中去,他们在本宿舍楼中相应的记录就应该删去;当宿舍财产报修及时解决后,管理员应登记解决时间,表明该报修问题已成功解决。3、安全性与完整性要求:、安全性与完整性要求:A、安全性要求:(1)系统应设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;(2)

6、系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;(3)系统应对不同用户设置不同的权限,区分不同的用户,如区分普通用户(学生),管理员。B、完整性要求:(1)各种信息记录的完整性,信息记录内容不能为空;(2)各种数据间相互的联系的正确性;(3)相同的数据在不同记录中的一致性。1.2 系统功能分析:系统功能分析:数据库课程设计-学生宿舍管理系统3学生宿舍管理系统基本信息管理服务管理来访者管理学生信息工作人员信息维修宿舍信息来访者信息登记来访者查询本系统主要有以下功能:基本信息管理、住宿管理、服务管理、来访者管理。基本信息管理包括学生信息、宿舍信息、工作人员信息;服务

7、管理包括维修;来访者管理包括来访者信息登记、来访者查询。数据库操作功能:查询、删除、修改、插入;1.3 业务流程概述业务流程概述系统的业务是系统要达到的业务目标,业务流程分析是系统分析中的基础环节。根据以上系统功能的分析,我们将学生宿舍管理业务分成基本信息管理、住宿管理、服务管理、来访者管理四个模块。1.基本信息管理宿舍信息管理:主要是记录宿舍的基本状况,可住人数,已住人数,电话号码,便于工作人员分配寝室以及联系。数据库课程设计-学生宿舍管理系统4学生信息管理:宿舍的学生信息主要来自学生处提供的,对于已住进宿舍的学生,工作人员从学生处提取相关信息,进行统一管理,如果学生退房之后,相应的信息也将

8、被删除。员工信息管理:记录在宿舍、楼管处工作的员工信息,及时增、删、改,便于有个统一的收集、管理、宿舍更好的运作。2.服务管理报修:学生把需要维修的设备向楼管处提出申请,填写相应的维修单,支付相应的费用,工作人员根据维修单派发维修员工对设备进行维修,楼管处再把已修信息反馈给学生。1.4 数据流程图数据流程图数据流程图是全面描述信息系统逻辑模型的工具,它抽象概括地把信息系统中各种业务处理过程联系起来。根据以上的业务流程的分析,以及学生宿舍的特点,我们给出了以下学生宿舍管理信息系统的数据流程图。将顶层进行细分,主要是工作人员管理宿舍,接收和处理各种事务,包括学生,宿舍,以及工作人员的基本信息管理,

9、学生住宿管理,宿舍的服务管理,来访者管理,得到以下的第一层数据流程图如下:数据库课程设计-学生宿舍管理系统5管理员1.0接受事务事务基本信息事务住宿事务服务事务出入事务1.4来访者管理1.3服务管理1.2住宿管理1.1基本信息管理工作人员基本信息住宿信息服务信息D3宿舍表D2学生表D3宿舍表D4学生住宿表D8设备租赁表D5设备维修表D来访者表针对每个事务的管理,我们进行了分类,即第二层数据流程图如下:数据库课程设计-学生宿舍管理系统6第二层:来访人员1.2.0事务分类1.2.2访问结束1.2.1人员来访工作人员人员来访信息结束信息D7人员来访信息表1.5 数字字典数字字典1.5.1 数据项数据

10、项住宿学生数据字典属性名类型长度备注学号char8住宿学生学号姓名Varchar10住宿学生姓名性别char2男/女专业Varchar20学生专业联系方式char11联系方式员工数据字典属性名类型长度备注员工号char4员工姓名Varchar10数据库课程设计-学生宿舍管理系统7年龄smallint2性别char2职位Varchar20联系方式char11宿舍数据字典属性名类型长度备注楼号char2宿舍号char3宿舍电话char12可住人数smallint2已住人数smallint2临时设备租赁数据字典属性名类型长度备注设备号char8设备名Varchar20租赁日期Datetime8所租的

11、日期归还日期Datetime8归还设备日期租赁费用decimal5租赁设备的费用报修数据字典属性名类型长度备注楼号char2宿舍号char3报修人宿舍号物品号varchar8报修物品编号报修原因char50物品损坏原因提交日期datetime8报修提交日期解决日期datetime8问题解决日期报修费用decimal5报修的费用水电费数字字典属性名类型长度备注楼号char2数据库课程设计-学生宿舍管理系统8宿舍号char3月份Varchar4用电量decimal(5,2)电费decimal(5,2)用水量decimal(5,2)水费decimal(5,2)来访者数字字典属性名类型长度备注来访人姓

12、名Varchar10被访人姓名Varchar10所属关系Varchar20证件名称Varchar20来访日期Datetime8来访时间Datetime8结束时间Datetime8备注Varchar501.5.2 数据结构数据结构数据结构名组成学生住宿信息学号,姓名,性别,专业,联系方式,入住时间员工信息员工号,姓名,年龄,性别,职位,家庭地址,联系方式宿舍信息楼号,宿舍号,宿舍电话,可住人数,已住人数临时设备信息设备号,设备名,租赁日期,归还日期,租赁费用报修信息楼号,宿舍号,物品号,报修原因,提交日期,解决日期,报修费用来访者信息来访人姓名,被访人姓名,所属关系,证件名称,来访日期,来访时间

13、,结束时间,备注1.5.3 数据流数据流数据流名数据流来源数据流去向组成数据库课程设计-学生宿舍管理系统9登记报修信息学生报修信息表报修信息查询报修信息报修信息表管理员报修信息登记已修信息管理员报修信息表已修信息登记来访者信息来访者来访者信息表来访信息查询来访者信息管理员来访者信息表来访信息登记来访结束信息管理员来访者信息表来访结束信息1.5.4 数据存储数据存储数据存储名输入的数据流输出的数据流组成报修信息表报修信息已修信息报修信息报修信息已修信息来访者信息表来访信息来访结束信息来访信息来访信息来访结束信息1.5.5 处理过程处理过程处理过程名输入数据流输出数据流登记报修报修信息报修信息查询

14、报修报修信息报修信息登记已修信息已修信息已修信息登记来访者信息来访者信息来访者信息查询来访者信息来访者信息来访者信息登记来访结束信息来访结束信息来访结束信息二二 概念结构设计概念结构设计概念结构是将需求分析抽象为信息结构即概念模型的过程,这样才能更好地、更准确的用某一 DBMS 实现这些需求,是整个数据库设计的关键,它主要特点是能真实、充分地反映现实社会,包括事物和事物之间的联系,能满足用户对数据的处理需求,是对现实世界的一个真实模型,而且还易于理解,也方便用户的操作,对数据的修改和各种模型的转换。从以上的数据流程图中,我们选择了第二层数据流程图作为设计 E-R 图的出发点,从分析数据流图和数

15、字字典中可以看出,整个系统功能是围绕“学生住宿”问题进行处理,学生住进宿舍,工作人员管理宿舍,处理宿舍提供的各种服务,另外,还有来访者对学生的来数据库课程设计-学生宿舍管理系统10访。ER 图见附件。三三 逻辑结构设计逻辑结构设计3.1 逻辑设计的任务和目标逻辑设计的任务和目标以上的概念设计阶段是独立于任何一种数据模型的,但是逻辑设计阶段就与选用的DBMS 产品发生关系了,系统逻辑设计的任务就是将概念设计阶段设计好的基本 E-R 图转换为选用 DBMS 产品所支持的数据模型相符合的逻辑结构。3.2 数据组织数据组织3.2.1 将将 E-R 图转换为关系模型图转换为关系模型由于宿舍与学生是 1:

16、n 关系,可以将其之间的联系与 n 端实体学生合并,宿舍和员工,学生和临时设备,学生和来访者也是 1:n 关系,同样也将其之间的联系与 n 端实体员工,临时设备,来访者合并,具体的基本 E-R 图向关系模型的转化如下:学生住宿表:(学号,姓名,性别,专业,入住时间,联系方式,楼号,宿舍号)宿舍表:(楼号,宿舍号,电话号码,可住人数,已住人数)员工表:(员工号,员工姓名,性别,职位,家庭地址,联系方式,楼号)报修表:(楼号,宿舍号,物品号,报修原因,提交日期,解决日期,报修费用)来访者表:(来访人姓名,被访人姓名,所属关系,证件名称,来访日期,来访时间,结束时间,学号)3.2.2 逻辑结构定义逻

17、辑结构定义由以上分析,得出上述 7 个表格结构如下:学生住宿表,主要记录学生住宿的基本信息。属性名类型长度完整性约束备注学号char8主码住宿学生学号姓名Varchar10非空住宿学生姓名性别char2男或女,默认值男学生性别专业Varchar20非空学生专业数据库课程设计-学生宿舍管理系统11联系方式char11可以为空联系方式入住时间datetime8非空新生搬入时间楼号char2外码学生住的楼号宿舍号char3外码学生住的宿舍号员工表,主要记录员工的基本信息。属性名类型长度完整性约束备注员工号char4主码员工姓名Varchar10非空年龄smallint2大于 18,小于 65楼号ch

18、ar2非空性别char2男或女职位Varchar20非空联系方式char11可以为空宿舍表,主要记录宿舍的入住信息。属性名类型长度完整性约束备注楼号char2非空宿舍号char3非空宿舍电话char12非空可住人数smallint2非空已住人数smallint2非空报修表,主要记录物品的报修信息。属性名类型长度完整性约束备注楼号char2非空宿舍号char3非空报修人宿舍号物品号varchar8非空报修物品编号报修原因char50非空物品损坏原因提交日期datetime8非空报修提交日期解决日期datetime8非空问题解决日期报修费用decimal(5,2)非空报修的费用数据库课程设计-学生

19、宿舍管理系统12来访者表,主要记录来访者的信息。属性名类型长度完整性约束备注来访人姓名Varchar10主码被访人姓名Varchar10非空所属关系Varchar20非空证件名称Varchar20非空来访日期Datetime8非空来访时间Datetime8非空结束时间Datetime8非空学号char8外码四四 物理结构设计物理结构设计4.1 物理设计阶段的目标与任务物理设计阶段的目标与任务数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务:(1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;(2)对物理结构进行评价,评价的重点

20、是时间和空间效率。4.2 数据存储方面数据存储方面为数据库中各基本表建立的索引如下:(1)由于基本表学生住宿表的主码学号经常在查询条件和连接操作的连接条件中出现,且它的值唯一,考虑在学号这个属性上建立唯一性索引;(2)宿舍表的主码楼号,宿舍号经常在查询条件中出现,且它们的组合值唯一,考虑在它们之上建立组合索引;(3)基本表学生住宿表的一属性姓名,经常在查询条件中出现,且经常出现在相等的比较条件中,考虑在其之上建立聚簇索引;数据库课程设计-学生宿舍管理系统13(4)由于员工表,报修表,设备租赁表,水电费表,来访者表的属性值经常发生变化,权衡系统为维护索引付出的代价,暂考虑不建立索引;五五 数据实

21、施和维护数据实施和维护5.1 建立数据库、数据表、视图、索引、导入数据建立数据库、数据表、视图、索引、导入数据5.1.1 建立数据库建立数据库create database 学生宿舍管理系统;5.1.2 建立数据表建立数据表宿舍表宿舍表Create table 宿舍表(楼号 char(2),宿舍号 char(3),primary key(楼号,宿舍号),宿舍电话 char(12)not null,可住人数 smallintnot null,已住人数 smallintnot null,);学生住宿表学生住宿表Create table 学生住宿表(学号 char(8)primary key,姓名

22、varchar(10)not null,性别 char(2)default 男 check(性别 in(男,女),专业 varchar(20)not null,联系方式 char(11),入住时间 datetimenot null,楼号 char(2)not null,宿舍号 char(3)not null,foreign key(楼号,宿舍号)references 宿舍表(楼号,宿舍号),);员工的基本信息表员工的基本信息表数据库课程设计-学生宿舍管理系统14Create table 员工表(员工号 char(4)primary key,员工姓名 varchar(10)not null,年龄

23、 smallintcheck(年龄14 and 年龄65),楼号 char(2),性别 char(2)check(性别 in(男,女),职位 varchar(20)not null,联系方式 char(11),);报修信息表报修信息表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,);来访者信息表来访者信息

24、表Create table 来访者表(来访者姓名 varchar(10)not null,被访者姓名 varchar(10)not null,所属关系 Varchar(20)not null,证件名称 Varchar(20)not null,来访日期 Datetimenot null,来访时间 Datetimenot null,结束时间 Datetimenot null,备注 Varchar(50),学号 char(8)foreign key references 学生住宿表(学号),);5.1.3 建立视图建立视图1.建立物流管理专业的学生住宿的视图数据库课程设计-学生宿舍管理系统15Cre

25、ate view 物流管理学生住宿表AsSelect 学号,姓名,楼号,宿舍号From 学生住宿表Where 专业=物流管理;2.建立住在 22 号楼的学生信息的视图Create view 22 号楼学生住宿表AsSelect 学号,姓名,专业From 学生住宿表Where 楼号=22;3.建立职位是管理员的员工信息的视图Create view 管理员信息表AsSelect*From 员工表Where 职位=管理员;4.建立 22 号楼各个宿舍的信息的视图Create view 22 号楼宿舍信息表AsSelect*From 宿舍表Where 楼号=22;5.1.4 建立索引建立索引creat

26、e unique index 住宿_学号 on 学生住宿表(学号);create unique index 宿舍楼_宿舍号 on 宿舍表(楼号,宿舍号);create cluster index 学生_姓名 on 学生住宿表(姓名);Createunique index IX_员工号 on 员工表(员工号);5.1.5 导入数据导入数据1./*宿舍表格记录插入*/数据库课程设计-学生宿舍管理系统16Insert into 宿舍表Values(27,101,057108011010,04,04)Insert into 宿舍表Values(22,111,057108011110,04,04)Ins

27、ert into 宿舍表Values(27,131,057108011160,04,04)截图如下:2./*学生住宿表格记录插入*/Insert into 学生住宿表Values(08030004,王晓明,男,物流管理,15158110001,20080906,27,101)Insert into 学生住宿表Values(08030002,李倩,女,物流管理,15158110002,20080906,22,111)Insert into 学生住宿表Values(08030005,李明,男,物流管理,15158110003,20080906,27,131)截图如下:3./*员工表格记录插入*/I

28、nsert into 员工表Values(y001,叶玉,40,27,女,清洁工,15058101000)Insert into 员工表Values(y002,王思思,26,22,女,管理员,15058101010)Insert into 员工表Values(y003,李伟,34,22,男,管理员,15058101110)截图如下:4./*报修表格记录插入*/Insert into 报修表Values(27,101,0001,日光灯不亮,20100920,20100922,00.00)Insert into 报修表Values(22,111,0001,热水器坏了,20100920,201009

29、22,00.00)数据库课程设计-学生宿舍管理系统17Insert into 报修表Values(27,131,0001,下水道坏了,20100920,20100922,05.00)截图如下:5./*来访者表格记录插入*/Insert into 来访者表Values(张晓红,王晓明,母子,身份证,20100920,2010/9/20 12:20:30,2010/9/20 12:50:30,帮忙带东西,08030004)Insert into 来访者表Values(王伟,李倩,兄妹,身份证,20100910,2010/9/10 12:20:30,2010/9/10 12:50:30,看望她,08

30、030002)Insert into 来访者表Values(王梦,李明,姐妹,身份证,20100930,2010/9/30 12:10:30,2010/9/30 13:50:30,看望她,08030005)截图如下:5.2 记录和约束条件的的增加、删除和修改记录和约束条件的的增加、删除和修改5.2.1 记录的增加、删除、修改记录的增加、删除、修改1.一个新生住进宿舍:insertinto学生住宿表Values(08032111,张三,男,物流管理,15122235673,09/03/12,27,325)2.删除员工号为 0103 的信息Deletefrom 员工表where员工号=01033.

31、修改宿舍表中 11 号楼 214 宿舍的已住人数Update 宿舍表Set已住人数=04Where 楼号=11 and 宿舍号=214;数据库课程设计-学生宿舍管理系统185.2.2 约束条件的增加、删除、修改约束条件的增加、删除、修改1.在学生住宿表中增加一属性为学院,数据类型为 varchar(20),Alter table 学生住宿表 add 学院 varchar(20);2.删除学生住宿表中新增的属性学院Alter table 学生住宿表 drop column 学院;3.在设备租赁表中,增加设备名取唯一值的约束条件Alter table 设备租赁表 add unique(设备名);5

32、.3 查询语句查询语句1.查询员工姓名为李倩的基本信息Select*From 员工表Where 员工姓名=李倩;2.查询年龄在 22 岁到 32 岁的员工号,员工姓名,职位Select 员工号,员工姓名,职位From 员工表Where 年龄 between 22 and 32;3.查询所有姓黄的来访者信息Select*From 来访者表Where 来访者姓名 like 黄%;4.查询张三所在的宿舍的已住人数Select 宿舍表.楼号,宿舍表.宿舍号,已住人数From 宿舍表,学生住宿表Where 姓名=张三 and 宿舍表.楼号=学生住宿表.楼号 and 宿舍表.宿舍号=学生住宿表.宿舍号;5

33、.查询住在 22 号楼 123 宿舍所住的学生信息Select 学号,姓名,专业,联系方式From 学生住宿表Where 楼号=22 and 宿舍号=123;6.查询物流专业的学生住宿人数数据库课程设计-学生宿舍管理系统19Select count(学号)From 学生住宿表Where 专业=物流专业;六六 总结总结这两周下来,学到了不少东西,以前对 SQL,只能按书上按部就班的写,写 SQL 语句是会了,但数据逻辑和方法方面,一点都不够到位,没有对以前的知识进行系统的了解,没有把各个部分知识整合在一起,通过这次学生宿舍管理系统课程设计,使我对数据库设计的各个方面都加深了理解,了解到数据库是一

34、环扣一环的,只有数据流程图和数字字典做好了,才能进行下面的 E-R 图设计,中途不能有办点马虎,也体会到把知识应用于实践是不容易的,同时也学生课本所没有的东西,一些问题也只有真正做设计的时候才会出现。由于时间比较紧,因此我们所做的课程设计肯定还存在许多的不足之处,程序中也存在许多小错误。这将激励我们在以后的学习当中职累更多的经验,努力减少错误的发生。数据库课程设计-学生宿舍管理系统20附件附件*数据库课程设计-学生宿舍管理系统21来访者入住来访宿舍学生员工管理n1n1n1姓名入住时专业学号楼号宿舍电话宿舍号可住人数员工号职位员工姓名姓名性别关系来访时间离开时间已住人数性别年龄联系方式联系方式证件

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com