数据库课程设计 宿舍报修系统.docx
- 文档编号:12392006
- 上传时间:2023-04-18
- 格式:DOCX
- 页数:16
- 大小:286.62KB
数据库课程设计 宿舍报修系统.docx
《数据库课程设计 宿舍报修系统.docx》由会员分享,可在线阅读,更多相关《数据库课程设计 宿舍报修系统.docx(16页珍藏版)》请在冰豆网上搜索。
数据库课程设计宿舍报修系统
《数据库系统原理》
课程设计报告
课题名称:
宿舍报修系统
专业班级:
学号:
姓名:
指导老师:
成绩:
2014年6月
一、课题名称
宿舍报修系统
二、需求分析
第一部分调查用户需求
本系统的最终用户为宿舍楼管理员,宿舍楼的学生,宿舍楼的维修工人。
根据我们日常生活中的经验,结合对自己学校宿舍楼管理老师,维修工人的咨询和对同宿舍楼同学的调查,得出用户的下列实际要求:
1.宿舍报修的基本情况
学生住在宿舍中,每栋楼都有特定的维修工人(水工、电工、木工),学生在上报维修表后,维修工人根据维修表上的信息进行维修。
1.1学生的基本信息
每个学生都有自己的登录密码,与之姓名对应,登录时要与数据库中所存信息匹配才可登录。
相对应的还有该学生的宿舍楼号,宿舍号,手机号码。
1.2管理员的基本信息
管理员在登录宿舍报修系统时,需要用到其用户名和登录密码.,与数据库中所存的信息匹配时才可以登录。
1.3维修工人的基本信息
维修工人登录时所用的用户名和密码都是特定的,在验证与数据库中所存的信息匹配时才可以登录。
每个维修工人都有各自所属的宿舍楼号,不同的维修工人有不同的维修类型。
1.4宿舍楼号的基本信息
每栋宿舍楼都有其唯一的楼号,以此来区分学生所属的楼号,维修工人所属的楼号。
1.5报修表的基本信息
宿舍楼中经常出现物品的损坏,比如灯泡坏了,水龙头坏了等,这时,同学们需要将物品损坏情况在报修表中填写清楚,以便维修工人进行维修。
这时,需要记录报修的宿舍楼号,宿舍号,申请的报修类型,损坏的具体部位,同时记录预约维修的时间,申请维修的学生的姓名,电话。
当损坏的物品维修完毕后,学生可将维修状态更改为已维修,表示该报修成功解决。
2.用户对系统的要求
2.1学生
2.1.1信息要求
学生用户登录后,能上报本宿舍维修类型(包括水工、电工、木工),每个类型应该给出具体部位(如水工类型的有水管、水龙头等),一旦维修类型确定,维修工人也就确定,并给出预约维修的日期和时间,申请维修的学生姓名、电话等。
2.1.2处理要求
学生能在登录宿舍报修系统之后,申请报修,表示宿舍物品有损坏,需要维修工人进行维修。
当宿舍物品报修及时解决后,申请报修的学生应该要再次登录宿舍报修系统,将维修状态更改为已维修,表明该报修问题已成功解决。
2.1.3安全性要求
(1).系统应设置登录用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;
(2).系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;
(3).系统应对不同用户设置不同的权限,区分不同的用户,如区分普通用户(维修工人),学生,管理员。
2.1.4完整性要求
(1).各种信息记录的完整性,信息记录内容不能为空;
(2).各种数据间相互的联系的正确性;
(3).相同的数据在不同记录中的一致性。
2.2.管理员
2.2.1信息要求
管理员能对维修类型(水工、电工、木工)进行管理,主要是确定每栋宿舍具体维修类型的工人人员(如5栋宿舍楼负责水工维修的是张三、电工是李四、木工是王五)。
2.2.2处理要求
管理员可以查询维修工人的基本信息,并且能对维修工人的基本信息进行更改。
比如,将一号宿舍楼的水工调到二号宿舍楼,将二号宿舍楼的水工调到三号楼去,则维修工人在记录中的所属楼号都要作相应的变化等。
2.3维修工人
2.3.1信息要求
维修工人登录后,能查询到所有自己要维修信息,并手动模拟是否去维修过,并能查询已经维修过的信息和全部信息(包括未维修和已维修)。
2.3.2处理要求
维修工人在查看自己所要维修的报修表后,就可以去报修的宿舍进行维修;同时也能看到报修表上是否已维修的信息。
第二部分系统功能的设计和划分
根据如上得到的用户需求,我们将本系统按照所完成的功能分成以下几部分:
1.学生登录部分
(1)处理学生登录
(2)学生可以申请报修
(3)学生可以查看维修状态
(4)学生可以确认报修是否被处理
2.管理员登录部分
(1)处理管理员登录
(2)管理员可以查看维修工人的信息
(3)管理员可以更改维修工人的信息
3.维修工人登录部分
(1)处理维修工人登录
(2)维修工人可以查看报修表信息
(3)维修工人可以手动模拟是否去维修过
第三部分数据流图
1.涉及到用户登录,主要针对三类用户:
管理员、学生、维修工人。
用户登录数据流图如图1所示。
图1用户登录数据流图
说明:
数据源:
用户
数据流:
登录系统、用户功能、用户需要的信息
处理:
身份认证
数据存储:
数据库
2.涉及到学生申请宿舍报修,主要针对一类用户:
学生。
学生登记宿舍报修数据流图如图2所示。
图2学生登记报修数据流图
说明:
数据源:
学生
数据流:
报修信息
处理:
报修信息、查看维修状态
数据存储:
报修登记表
3.涉及到管理员管理维修工人,主要针对一类用户:
管理员。
管理员管理维修工人数据流图如图3所示。
图3管理员管理维修工人数据流图
说明:
数据源:
管理员
数据流:
已登记信息、已更新的信息
处理:
查询信息、更新信息
数据存储:
维修工人信息表
4.涉及到维修工人查看报修信息,主要针对一类用户:
维修工人。
维修工人查看报修信息数据流图如图4所示。
图4维修工人查看报修信息数据流图
说明:
数据源:
维修工人
数据流:
报修信息、已登记信息、是否已维修
处理:
查看报修信息、手动模拟是否报修
数据存储:
报修信息表
5.涉及到宿舍报修流程,主要针对两类用户:
学生和维修工人。
宿舍报修数据流图如图5所示。
图5宿舍报修数据流图
说明:
数据源:
学生、维修工人
数据流:
报修信息、查询信息、已修信息、维修信息
处理:
报修信息、查询信息、确认是否维修
数据存储:
学生报修登记表
6.涉及到宿舍报修总流程,主要针对三类用户:
学生、管理员和维修工人。
宿舍报修数据流图如图6所示。
图6总数据流图
说明:
数据源:
学生、管理员、维修工人
数据流:
身份认证、报修信息、维修信息、查询信息
处理:
身份认证、报修信息、维修信息、查询信息、确认是否已维修
数据存储:
报修信息表、维修工人信息表、数据库
3、概念结构设计
E-R图
1.涉及到学生属性,主要针对一类用户:
学生。
学生属性图如图7所示。
图7学生实体E-R图
说明:
学生的属性有:
id、姓名、密码、宿舍楼号、宿舍号、联系方式
2..涉及到管理员属性,主要针对一类用户:
管理员。
管理员属性图如图8所示。
图8管理员实体E-R图
说明:
管理员的属性有:
id、姓名、密码
3.涉及到维修工人属性,主要针对一类用户:
维修工人。
维修工人属性图如图9所示。
图9 维修工人实体E—R图
说明:
维修工人的属性有:
id、姓名、密码、所属楼号、类型
4.总E-R图,如图10所示。
图10 全局E-R图
说明:
针对三类用户:
学生、管理员、维修工人
学生:
申请报修、查询维修状态
管理员:
管理维修工人信息
维修工人:
查询报修信息
4、逻辑结构设计
1.有关学生信息的二维表,如表1所示。
表1学生信息表
字段
字段类型
字段长度
是否允许为空
字段说明
id
int
2
否
学生的ID
name
varchar
50
否
学生的姓名
password
varchar
50
否
学生的登录密码
houseid
varchar
50
否
学生的宿舍号
buildingid
int
2
否
学生的宿舍楼号
phone
varchar
50
否
学生的联系方式
创建学生信息表的SQL语句:
CREATETABLE[dbo].[T_学生信息](
[id][int]IDENTITY(1,1)NOTNULL,
[name][varchar](50)NOTNULL,
[password][varchar](50)NOTNULL,
[houseid][varchar](50)NOTNULL,
[buildingid][int]NOTNULL,
[phone][varchar](50)NOTNULL,
CONSTRAINT[PK_T_学生信息]PRIMARYKEYCLUSTERED
(
[id]ASC
)WITH(IGNORE_DUP_KEY=OFF)ON[PRIMARY]
)ON[PRIMARY]
2.有关管理员信息的二维表,如表2所示。
表2管理员信息表
字段
字段类型
字段长度
是否允许为空
字段说明
id
int
2
否
管理员的ID
name
varchar
50
否
管理员的姓名
password
varchar
50
否
管理员的登录密码
创建管理员信息表的SQL语句:
CREATETABLE[dbo].[T_管理员信息](
[id][int]IDENTITY(1,1)NOTNULL,
[name][varchar](50)NOTNULL,
[password][varchar](50)NOTNULL,
CONSTRAINT[PK_T_管理员信息]PRIMARYKEYCLUSTERED(
[id]ASC
)WITH(IGNORE_DUP_KEY=OFF)ON[PRIMARY]
)ON[PRIMARY]
3.有关维修工人信息的二维表,如表3所示。
表3维修工人信息表
字段
字段类型
字段长度
是否允许为空
字段说明
id
int
2
否
维修工人的ID
name
varchar
50
否
维修工人的姓名
password
varchar
50
否
维修工人的登录密码
buildingid
int
2
否
维修工人所属的楼号
type
varchar
50
否
维修工人的维修类型
创建维修工人信息表的sql语句:
CREATETABLE[dbo].[T_维修工人信息](
[id][int]IDENTITY(1,1)NOTNULL,
[name][varchar](50)NOTNULL,
[password][varchar](50)NOTNULL,
[buildingid][int]NOTNULL,
[type][varchar](50)NOTNULL,
CONSTRAINT[PK_T_维修工人信息]PRIMARYKEYCLUSTERED
([id]ASC
)WITH(IGNORE_DUP_KEY=OFF)ON[PRIMARY]
)ON[PRIMARY]
4.有关报修信息的二维表,如表4所示。
表4报修信息表
字段
字段类型
字段长度
是否允许为空
字段说明
id
int
2
否
报修表的ID
time
datetime
8
否
预约维修的时间
type
varchar
50
否
宿舍维修类型
description
varchar
50
否
具体维修部位
repair
bit
否
是否维修
buildingid
int
2
否
宿舍楼号
name
varchar
50
否
申请的学生姓名
phone
varchar
50
否
申请的学生联系方式
houseid
varchar
50
否
申请的学生宿舍号
T_学生信息id
int
2
否
申请的学生的ID
创建报修信息表的SQL语句:
CREATETABLE[dbo].[T_维修工人信息](
[id][int]IDENTITY(1,1)NOTNULL,
[name][varchar](50)NOTNULL,
[password][varchar](50)NOTNULL,
[buildingid][int]NOTNULL,
[type][varchar](50)NOTNULL,
CONSTRAINT[PK_T_维修工人信息]PRIMARYKEYCLUSTERED
([id]ASC)WITH(IGNORE_DUP_KEY=OFF)ON[PRIMARY])ON[PRIMARY]
5.有关宿舍楼号的二维表,如表5所示。
表5building表
字段
字段类型
字段长度
是否允许为空
字段说明
id
int
2
否
宿舍楼的ID
创建building表的SQL语句:
CREATETABLE[dbo].[building](
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库课程设计 宿舍报修系统 数据库 课程设计 宿舍 报修 系统