大数据库课程设计 宿舍报修系统Word文件下载.docx
《大数据库课程设计 宿舍报修系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《大数据库课程设计 宿舍报修系统Word文件下载.docx(19页珍藏版)》请在冰豆网上搜索。
![大数据库课程设计 宿舍报修系统Word文件下载.docx](https://file1.bdocx.com/fileroot1/2022-12/15/2b4b9e06-c829-4d1a-a108-6d935fa5ac03/2b4b9e06-c829-4d1a-a108-6d935fa5ac031.gif)
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
学生的登录密码
houseid
学生的宿舍号
buildingid
学生的宿舍楼号
phone
学生的联系方式
创建学生信息表的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
管理员的姓名
管理员的登录密码
创建管理员信息表的SQL语句:
CREATETABLE[dbo].[T_管理员信息](
CONSTRAINT[PK_T_管理员信息]PRIMARYKEYCLUSTERED(
3.有关维修工人信息的二维表,如表3所示。
表3维修工人信息表
维修工人的ID
维修工人的姓名
维修工人的登录密码
维修工人所属的楼号
type
维修工人的维修类型
创建维修工人信息表的sql语句:
CREATETABLE[dbo].[T_维修工人信息](
[type][varchar](50)NOTNULL,
CONSTRAINT[PK_T_维修工人信息]PRIMARYKEYCLUSTERED
([id]ASC
4.有关报修信息的二维表,如表4所示。
表4报修信息表
报修表的ID
time
datetime
8
预约维修的时间
宿舍维修类型
description
具体维修部位
repair
bit
是否维修
宿舍楼号
申请的学生姓名
申请的学生联系方式
申请的学生宿舍号
T_学生信息id
申请的学生的ID
创建报修信息表的SQL语句:
([id]ASC)WITH(IGNORE_DUP_KEY=OFF)ON[PRIMARY])ON[PRIMARY]
5.有关宿舍楼号的二维表,如表5所示。
表5building表
宿舍楼的ID
创建building表的SQL语句:
CREATETABLE[dbo].[building](
CONSTRAINT[PK_building]PRIMARYKEYCLUSTERED
5、数据库实施
1.用户登录如图11所示。
图11用户登录界面图
通过输入用户名和密码再选择相关人员登录界面。
涉及到的表:
学生信息表、管理员信息表、维修工人信息表
2.学生登录后如图12所示。
图12 学生登录界面图
学生成功登陆后,选择功能界面。
3.学生报修信息内容如图13所示。
图13学生报修信息图
学生申请报修的报修信息表界面,信息填写完整后,提交。
涉及的表:
报修信息表、学生信息表、宿舍楼号表
4.学生查看维修状态如图14所示。
图14学生确认已维修显示图
学生在确认维修后,登录将维修状态改为已维修,表明该报修问题已成功解决。
学生信息表、报修信息表
5.管理员登录后如图15所示。
图15管理员登录界面图
管理员在成功登录后的功能查看界面。
6.管理员查看维修工人的基本信息,以及更改维修工人信息如图16所示。
图16管理员查询并修改工人信息图
管理员可以查看维修工人的信息,也可以更新维修工人的信息。
主要确定每栋宿舍具体维修类型的工人人员
维修工人信息表、宿舍楼号表
7.维修工人登录后的界面如图17所示。
图17维修工人登录界面图
维修功能登录后的功能选择界面。
8.维修工人查询所有所有自己要维修的信息(已维修,未维修)如图18所示。
图18 工人查询报修信息图
维修工人登录后可以查看自己所要维修的全部信息,包括已维修,未维修。
六、总结
1.5周的课程设计很快地结束了,深刻地感受到这次课程设计的复杂度,但是当仔细去钻研的时候,会发现并没有困难到无法着手。
这学期的数据库上机课程中只是按照书本编写代码,但这次课程设计却需要自己去设计、编写。
当然,如果只拿着书本去做对我个人而言不大可能,于是就需要借助课外书籍、网络等工具,同时也要向同学请教、交流。
这十几天我不敢说自己有多少收获,获得了多少知识,但是最起码我了解了数据库设计的部分过程。
用户要求、需求分析、数据流图、数据字典、E-R图、关系模型转换、物理设计、数据库实施,都是一步步来的,做好了前面的才能顺利的做接下来的。
通过这次课程设计发现我们只掌握数据库的知识是远远不够的,在制作C#窗体时,用到了很多的控件,在课程设计的过程中,充分的认识并熟练地运用了几个常用的窗体控件。
数据库的课程设计,最基本最基础的SQL语句,其实在课程设计之前,我都不知道怎么写,课程设计结束,不能说有多会写,但至少,SQL语句的模式是了解知道了。
在刚开始,数据库的连接上,我就遇到了一个不小的问题,因为软件安装有点不同,我的是SQL身份认证在数据库连接时有点不一样,代码要写完整,否则连接不成功,这个问题到最后还是问了老师才得到了解决。
每一次的课程设计对我么而言都是一种锻炼,通过一次次的课程设计,使我不断的进步,尽管进步是小的,但积少成多,还是有绩效的。
七、参考文献
[1]王珊,萨师煊著.数据库系统概论(第四版).高等教育出版社,2006
[2]陈根才,孙建伶,林怀忠.数据库课程设计[M].杭州:
浙江大学出版社,2005
[3]钱雪忠,罗海驰,陈国俊.数据库原理及课程设计.北京:
清华大学出版社,2009