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

上传人:聆听****声音 文档编号:565163 上传时间:2023-04-29 格式:DOC 页数:29 大小:276KB
下载 相关 举报
数据库课程设计-学生宿舍管理系统.doc_第1页
第1页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第2页
第2页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第3页
第3页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第4页
第4页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第5页
第5页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第6页
第6页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第7页
第7页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第8页
第8页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第9页
第9页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第10页
第10页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第11页
第11页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第12页
第12页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第13页
第13页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第14页
第14页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第15页
第15页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第16页
第16页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第17页
第17页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第18页
第18页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第19页
第19页 / 共29页
数据库课程设计-学生宿舍管理系统.doc_第20页
第20页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

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

《数据库课程设计-学生宿舍管理系统.doc》由会员分享,可在线阅读,更多相关《数据库课程设计-学生宿舍管理系统.doc(29页珍藏版)》请在冰点文库上搜索。

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

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

目录

摘要 2

一需求分析 2

1.1需求分析 2

1.1.1基本信息 2

1.1.2用户对系统要求 3

1.2系统功能分析:

4

1.3业务流程概述 4

1.4数据流程图 5

1.5数字字典 10

1.5.1数据项 10

1.5.2数据结构 13

1.5.3数据流 13

1.5.4数据存储 13

1.5.5处理过程 14

二概念结构设计 14

三逻辑结构设计 14

3.1逻辑设计的任务和目标 14

3.2数据组织 15

3.2.1将E-R图转换为关系模型 15

3.2.2逻辑结构定义 15

四物理结构设计 17

4.1物理设计阶段的目标与任务 17

4.2数据存储方面 18

五数据实施和维护 18

5.1建立数据库、数据表、视图、索引、导入数据 18

5.1.1建立数据库 18

5.1.2建立数据表 18

5.1.3建立视图 20

5.1.4建立索引 21

5.1.5导入数据 22

5.2记录和约束条件的的增加、删除和修改 24

5.2.1记录的增加、删除、修改 24

5.2.2约束条件的增加、删除、修改 24

5.3查询语句 25

5.4建立存储过程,触发器 26

六总结 27

附件 28

摘要

学生宿舍管理系统是应对学生宿舍管理的现代化、网络化,逐步摆脱当前学生宿舍管理的人工管理方式,提高学生宿舍管理效率而开发的,它包括基本信息管理、住宿管理、服务管理、来访者管理等四大功能模块。

该系统开发由需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、物理结构设计阶段、数据库实施与维护阶段等阶段组成。

一需求分析

目前,我们学校的宿舍管理都是由人工管理的,信息都是由文本记录的。

针对这一实际情况,我们设计了学生宿舍管理系统。

1.1需求分析

经过实际分析调查,一个学生宿舍管理系统主要是要方便宿舍管理人员的工作,提高其工作效率,不仅可以方便广大学生,而且还可以方便于教师和相关人员。

1.1.1基本信息

学生住在宿舍楼中,每幢宿舍楼都会有若干名老师负责本宿舍楼的日常管理。

(1)学生的基本信息:

入校时,每位同学都有唯一的学号,并被分配到指定的宿舍楼和指定的宿舍,也会有一个宿舍号,其入校时间就是他的入住时间。

(2)宿舍的基本信息:

每间宿舍都有唯一的楼号和宿舍号,入校时,宿舍会装公用电话机,相应地就有宿舍电话号码。

(3)工作人员基本信息:

每幢宿舍都有驻楼阿姨和保洁阿姨的编号。

(4)报修的基本信息:

宿舍楼中经常出现财产的损坏,比如灯泡坏了,厕所的马桶出故障了等,这时,同学们需要将财产损坏情况报告给宿舍楼管理员,以便学校派人进行维修。

这时,需要记录报修的宿舍号和损坏的财产编号,同时记录报修的时间和损坏的原因。

当损坏的财产维修完毕后,应记录解决时间,表示该报修成功解决。

(5)来访者基本信息

每幢宿舍对于每一次的人员来访都要做好相应的登记。

包括来访者和被访者的信息。

1.1.2用户对系统要求

1、信息要求:

宿舍楼管理员能查询上面提到的宿舍楼的所有相关信息,包括某一学号的学生在宿舍楼中住宿的详细信息,报修的所有信息和来访者的信息,以利于对整个宿舍楼的全面管理。

2、处理要求:

当学生基本信息发生变化时,宿舍楼管理员能对其进行修改。

比如,某些同学搬到其他的宿舍中去,他们在本宿舍楼中相应的记录就应该删去;当宿舍财产报修及时解决后,管理员应登记解决时间,表明该报修问题已成功解决。

3、安全性与完整性要求:

A、安全性要求:

(1)系统应设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;

(2)系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;

(3)系统应对不同用户设置不同的权限,区分不同的用户,如区分普通用户(学生),管理员。

B、完整性要求:

(1)各种信息记录的完整性,信息记录内容不能为空;

(2)各种数据间相互的联系的正确性;

(3)相同的数据在不同记录中的一致性。

1.2系统功能分析:

宿

系统

基本信息管理

服务管理

住宿管理

来访者管理

学生信息

工作人员信息

入住

租赁

电费

维修

水费

宿舍信息

调房

退房

来访者信息登记

来访者查询

本系统主要有以下功能:

基本信息管理、住宿管理、服务管理、来访者管理。

基本信息管理包括学生信息、宿舍信息、工作人员信息;住宿信息包括入住、调房、退房;服务管理包括租赁、水费、电费、维修;来访者管理包括来访者信息登记、来访者查询。

数据库操作功能:

查询、删除、修改、插入;

1.3业务流程概述

系统的业务是系统要达到的业务目标,业务流程分析是系统分析中的基础环节。

根据以上系统功能的分析,我们将学生宿舍管理业务分成基本信息管理、住宿管理、服务管理、来访者管理四个模块。

1.基本信息管理

宿舍信息管理:

主要是记录宿舍的基本状况,可住人数,已住人数,电话号码,便于工作人员分配寝室以及联系。

学生信息管理:

宿舍的学生信息主要来自学生处提供的,对于已住进宿舍的学生,工作人员从学生处提取相关信息,进行统一管理,如果学生退房之后,相应的信息也将被删除。

员工信息管理:

记录在宿舍、楼管处工作的员工信息,及时增、删、改,便于有个统一的收集、管理、宿舍更好的运作。

2.住宿管理

新生入住:

新生向楼管处提出入住申请,工作人员进行查询宿舍相关信息之后,再根据学生的信息相应的给新生安排宿舍,登记和修改相关信息。

调房:

学生向楼管处提出宿舍调房申请,楼管处根据学生的所要调房的信息,给予核实确认之后,查询宿舍信息之后,满足条件就给予学生办理调房,并修改相应信息,否则不办理。

退房:

学生向楼管处提出退房申请,楼管处核实证件准确无误之后,办理退房手续,并删除学生的相关信息。

3.服务管理

水电费:

楼管处在每个月下旬记录每个宿舍的水,电使用情况,根据收费标准,结算出每个宿舍所需支付的费用,再由每个宿舍在月底之前进行付费。

临时设备的租赁:

学生把所需的临时设备向楼管处进行租赁申请,再由工作人员核实,确定之后,给予学生批准,并收取相应的租赁费用。

报修:

学生把需要维修的设备向楼管处提出申请,填写相应的维修单,支付相应的费用,工作人员根据维修单派发维修员工对设备进行维修,楼管处再把已修信息反馈给学生。

4.外来人员管理

外来访客登记来访信息,楼管处根据外来访客所登记的信息表,从宿舍、工作人员信息、学生信息这三张表单中,查询外来访客所要访问的人员的基本信息,最后经过核实,确定其是否可以访问。

1.4数据流程图

数据流程图是全面描述信息系统逻辑模型的工具,它抽象概括地把信息系统中各种业务处理过程联系起来。

根据以上的业务流程的分析,以及学生宿舍的特点,我们给出了以下学生宿舍管理信息系统的数据流程图。

由于学生宿舍主要涉及学生的入住和退缩问题,以及住宿的管理,我们将学生宿舍管理系统的顶层设计如下:

学生

工作

人员

学生宿舍

管理系统

入住及离宿申请

信息处理结果

入住及离宿审批

信息检索请求

将顶层进行细分,主要是工作人员管理宿舍,接收和处理各种事务,包括学生,宿舍,以及工作人员的基本信息管理,学生住宿管理,宿舍的服务管理,来访者管理,得到以下的第一层数据流程图如下:

管理员

1.0

接受事务

事务

基本信息事务

住宿事务

服务事务

出入事务

1.4

来访者

管理

1.3

服务管理

1.2

住宿管理

1.1

基本信息管理

工作人员

基本信息

住宿信息

服务信息

来访信息

D3

宿舍表

D2

学生表

D3

宿舍表

D4

学生住宿表

D8

设备租赁表

D5

设备维修表

D

水电费表

D

来访者表

针对每个事务的管理,我们进行了分类,即第二层数据流程图如下:

第二层1:

工作人员

住宿管理事务

1.2.0

事务分类

1.2.2

调房管理

1.2.1

入住管理

1.2.3

退房管理

调房信息

入房信息

退房信息

入住信息

调房信息

退房信息

D4

学生住宿表

D3

宿舍表

D4

学生住宿表

D3

宿舍表

D4

学生住宿表

D3

宿舍表

第二层2:

D3

宿舍表

工作人员

基本信息事务

1.1.0

事务分类

1.1.2

宿舍管理

1.1.1

员工管理

1.1.3

学生管理

宿舍信息

员工信息

学生信息

员工信息

宿舍信息

学生信息

D1

员工表

D2

学生基本信息表

第二层3:

1.3.1

报修管理

1.3.2

临时设备租赁管理

人员来访信息

1.3.3

水电费

临时设备信息

临时设备信息

报修信息

水电费信息

水电费信息

服务事务

1.3.0

事务分类

工作

人员

第二层4:

来访人员

1.4.0

事务分类

1.4.2

访问结束

1.4.1

人员来访

工作

人员

人员来访信息

结束信息

D7

人员来访信息表

以上当中的住宿管理事务,有学生的入住管理,调房管理,退房管理,由于这三个事务都有相似性,首先都需要学生提出申请,再经过管理者的审核,通过查询宿舍表,了解住宿情况之后再考虑是否满足学生的申请,申请通过之后,相应的调整学生住宿表和宿舍表的信息,所以我们就以学生入住管理为例,其流程图如下:

学生

查询床位

分配宿舍

宿舍

不满足

学生

D3

宿舍表

D3

宿舍表

D4

学生住宿表

满足

1.5数字字典

1.5.1数据项

住宿学生数据字典

属性名

类型

长度

备注

学号

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.5.2数据结构

数据结构名

组成

学生住宿信息

学号,姓名,性别,专业,联系方式,入住时间

员工信息

员工号,姓名,年龄,性别,职位,家庭地址,联系方式

宿舍信息

楼号,宿舍号,宿舍电话,可住人数,已住人数

临时设备信息

设备号,设备名,租赁日期,归还日期,租赁费用

报修信息

楼号,宿舍号,物品号,报修原因,提交日期,解决日期,报修费用

水电费信息

楼号,宿舍号,月份,用电量,电费,用水量,水费

来访者信息

来访人姓名,被访人姓名,所属关系,证件名称,来访日期,来访时间,结束时间,备注

1.5.3数据流

数据流名

数据流来源

数据流去向

组成

登记报修信息

学生

报修信息表

报修信息

查询报修信息

报修信息表

管理员

报修信息

登记已修信息

管理员

报修信息表

已修信息

登记设备租赁信息

学生

设备租赁信息表

设备租赁信息

查询设备租赁信息

设备租赁信息表

学生

设备租赁信息

登记设备归还信息

管理员

管理员

设备归还信息

登记来访者信息

来访者

来访者信息表

来访信息

查询来访者信息

管理员

来访者信息表

来访信息

登记来访结束信息

管理员

来访者信息表

来访结束信息

1.5.4数据存储

数据存储名

输入的数据流

输出的数据流

组成

报修信息表

报修信息

已修信息

报修信息

报修信息

已修信息

设备租赁信息表

设备租赁信息

设备归还信息

设备租赁信息

设备租赁信息

设备归还信息

来访者信息表

来访信息

来访结束信息

来访信息

来访信息

来访结束信息

1.5.5处理过程

处理过程名

输入数据流

输出数据流

登记报修

报修信息

报修信息

查询报修

报修信息

报修信息

登记已修信息

已修信息

已修信息

登记设备租赁信息

设备租赁信息

设备租赁信息

查询设备租赁

设备租赁信息

设备租赁信息

登记设备归还信息

设备归还信息

设备归还信息

登记来访者信息

来访者信息

来访者信息

查询来访者信息

来访者信息

来访者信息

登记来访结束信息

来访结束信息

来访结束信息

二概念结构设计

概念结构是将需求分析抽象为信息结构即概念模型的过程,这样才能更好地、更准确的用某一DBMS实现这些需求,是整个数据库设计的关键,它主要特点是能真实、充分地反映现实社会,包括事物和事物之间的联系,能满足用户对数据的处理需求,是对现实世界的一个真实模型,而且还易于理解,也方便用户的操作,对数据的修改和各种模型的转换。

从以上的数据流程图中,我们选择了第二层数据流程图作为设计E-R图的出发点,从分析数据流图和数字字典中可以看出,整个系统功能是围绕“学生住宿”问题进行处理,学生住进宿舍,工作人员管理宿舍,处理宿舍提供的各种服务,另外,还有来访者对学生的来访。

ER图见附件。

三逻辑结构设计

3.1逻辑设计的任务和目标

以上的概念设计阶段是独立于任何一种数据模型的,但是逻辑设计阶段就与选用的DBMS产品发生关系了,系统逻辑设计的任务就是将概念设计阶段设计好的基本E-R图转换为选用DBMS产品所支持的数据模型相符合的逻辑结构。

3.2数据组织

3.2.1将E-R图转换为关系模型

由于宿舍与学生是1:

n关系,可以将其之间的联系与n端实体学生合并,宿舍和员工,学生和临时设备,学生和来访者也是1:

n关系,同样也将其之间的联系与n端实体员工,临时设备,来访者合并,具体的基本E-R图向关系模型的转化如下:

学生住宿表:

(学号,姓名,性别,专业,入住时间,联系方式,楼号,宿舍号)

宿舍表:

(楼号,宿舍号,电话号码,可住人数,已住人数)

员工表:

(员工号,员工姓名,性别,职位,家庭地址,联系方式,楼号)

临时设备租赁表:

(设备号,设备名,租赁日期,归还日期,租赁费用,学号)

报修表:

(楼号,宿舍号,物品号,报修原因,提交日期,解决日期,报修费用)

水电费表:

(楼号,宿舍号,月份,用电量,电费,用水量,水费)

来访者表:

(来访人姓名,被访人姓名,所属关系,证件名称,来访日期,来访时间,结束时间,学号)

3.2.2逻辑结构定义

由以上分析,得出上述7个表格结构如下:

学生住宿表,主要记录学生住宿的基本信息。

属性名

类型

长度

完整性约束

备注

学号

char

8

主码

住宿学生学号

姓名

Varchar

10

非空

住宿学生姓名

性别

char

2

男或女,默认值男

学生性别

专业

Varchar

20

非空

学生专业

联系方式

char

11

可以为空

联系方式

入住时间

datetime

8

非空

新生搬入时间

楼号

char

2

外码

学生住的楼号

宿舍号

char

3

外码

学生住的宿舍号

员工表,主要记录员工的基本信息。

属性名

类型

长度

完整性约束

备注

员工号

char

4

主码

员工姓名

Varchar

10

非空

年龄

smallint

2

大于18,小于65

楼号

char

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,2)

非空

租赁设备的费用

学号

char

8

外码

租设备学生学号

报修表,主要记录物品的报修信息。

属性名

类型

长度

完整性约束

备注

楼号

char

2

非空

宿舍号

char

3

非空

报修人宿舍号

物品号

varchar

8

非空

报修物品编号

报修原因

char

50

非空

物品损坏原因

提交日期

datetime

8

非空

报修提交日期

解决日期

datetime

8

非空

问题解决日期

报修费用

decimal

(5,2)

非空

报修的费用

水电费表,主要是每个月记录各个宿舍的水电使用情况以及相应的费用。

属性名

类型

长度

完整性约束

备注

楼号

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

非空

学号

char

8

外码

四物理结构设计

4.1物理设计阶段的目标与任务

数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,在这个阶段中要完成两大任务:

(1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;

(2)对物理结构进行评价,评价的重点是时间和空间效率。

4.2数据存储方面

为数据库中各基本表建立的索引如下:

(1)由于基本表学生住宿表的主码学号经常在查询条件和连接操作的连接条件中出现,且它的值唯一,考虑在学号这个属性上建立唯一性索引;

(2)宿舍表的主码楼号,宿舍号经常在查询条件中出现,且它们的组合值唯一,考虑在它们之上建立组合索引;

(3)基本表学生住宿表的一属性姓名,经常在查询条件中出现,且经常出现在相等的比较条件中,考虑在其之上建立聚簇索引;

(4)由于员工表,报修表,设备租赁表,水电费表,来访者表的属性值经常发生变化,权衡系统为维护索引付出的代价,暂考虑不建立索引;

五数据实施和维护

5.1建立数据库、数据表、视图、索引、导入数据

5.1.1建立数据库

createdatabase学生宿舍管理系统;

5.1.2建立数据表

宿舍表

Createtable宿舍表

(楼号char

(2),

宿舍号char(3),

primarykey(楼号,宿舍号),

宿舍电话char(12)notnull,

可住人数smallintnotnull,

已住人数smallintnotnull,

);

学生住宿表

Createtable学生住宿表

(学号char(8)primarykey,

姓名varchar(10)notnull,

性别char

(2)default'男'check(性别in('男','女')),

专业varchar(20)notnull,

联系方式char(11),

入住时间datetimenotnull,

楼号char

(2)notnull,

宿舍号char(3)notnull,

foreignkey(楼号,宿舍号)references宿舍表(楼号,宿舍号),

);

员工的基本信息表

Createtable员工表

(员工号char(4)primarykey,

员工姓名varchar(10)notnull,

年龄smallintcheck(年龄>14and年龄<65),

楼号char

(2),

性别char

(2)check(性别in('男','女')),

职位varchar(20)notnull,

联系方式char(11),

);

设备的租赁信息表

Createtable设备租赁表

(设备号char(8)primarykey,

设备名Varchar(20)notnull,

租赁日期Datetimenotnull,

归还日期Datetimenotnull,

租赁费用decimal(5,2

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2