《数据库设计报告-高校学生公寓管理系统.docx》由会员分享,可在线阅读,更多相关《数据库设计报告-高校学生公寓管理系统.docx(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、西北民族大学课程设计说明书20132014学年第2学期题 目: 高校学生公寓管理系统 学 院: 计算机学院 专业班级:2012级软件工程1班学 号: 6 4 6 2 2 学生姓名:杨阔、魏于川、卢刚、王小刚指导教师:张炜成 绩: 时 间:2014年6月23日 西北民族大学数据库原理及应用综合实训任务书20132014 学年第2学期学生姓名:杨阔、魏于川、卢刚、王小刚专业班级: 12计算机软件工程1班 指导教师: 张炜 一、综合实践题目: 高校学生公寓管理系统二、综合实践内容(含技术指标)设计一个高校学生公寓管理系统,可以实现学生管理、公寓房间管理、财产管理、出入登录和外来人员管理等主要功能。至
2、少设计6个表,并创建各个表之间的关系,定义相关的完整性约束;根据需要,至少设计四个视图;根据实际需要,至少创建两个存储过程;完成相关的物理设计;对数据库进行测试和试运行。三、进度安排1需求分析,1. 各小组根据具体的题目,讨论相关的用户需求;2. 确定需求,撰写需求分析文档;画出每个子系统的数据流图;写出系统各实体和联系的数据字典;8学时2概念结构设计,1. 设计出系统的局部E-R图;2. 集成分E-R图,设计出基本E-R图;4学时;3逻辑结构设计1. 设计系统的关系模型;2. 对关系模型进行优化;3. 设计出相关的子模式;4. 在SQL Server 2000或SQL Server 2005
3、里,创建数据库和表;5. 安全控制分析用户和权限,设计视图和存储过程;4学时4. 物理设计,1. 关系模式存取方法的选择;2. 确定数据的存储结构;3. 评价物理结构;4学时5. 数据库实施;1. 基础数据的录入;2. 数据库的试运行;4学时6. 数据的运行和维护;1. 确定数据库的备份方案;2. 检查数据的安全性、完整性控制;3. 监视数据库性能,分析和优化性能。4学时7. 小组总结和修改、完善课程设计报告,准备课程设计答辩PPT;4学时四、基本要求1分析系统的功能,写出详细的需求分析报告,并根据数据设计的各个阶段,写出完整的课程设计报告;2在具体的数据管理系统上,实现该数据系统,设计相应的
4、用户子模式,并设计系统的安全性和完整性。完成数据加载和试运行;3参加课程设计答辩。 课程负责人签名: 年 月 日课程设计分工安排姓名课程设计负责工作备注卢刚高校学生公寓管理系统报告的整体设计、需求分析、监督进度等等组长王小刚概念结构设计、设计出系统的E-R图。组员魏于川逻辑结构设计、创建数据库和表、设计视图和存储过程等等。组员杨阔数据库实施、基础数据的录入、数据库的试运行。组员数据的运行和维护、确定数据库的备份方案、等等。组员课程设计成绩评定表姓 名成绩评定权重总分总成绩(五分制)平时成绩20报告成绩50答辩成绩30蓝文坚曹学明魏少锋王冬冬林绪鸣高校学生公寓管理系统摘 要 随着高校的不断发展,
5、学校招生人数也在不断增长。为了便于管理学生的住宿问题,我们设计了学生公寓管理系统,借助数据库技术让学生公寓的管理更加方便,同时也有助于宿舍和学生信息的及时更新。 本文介绍了在MySQL环境下采用“自下而上地总体规划,自下而上地应用开发”的策略开发一个管理信息系统的过程。本文介绍了学生公寓公寓管理系统的需求分析,部分主要是用户的要求及功能划分:系统设计部分主要介绍了系统功能设计和数据库设计;系统实现部分包括数据库的创建及一些数据库技术运用。关键词:学生公寓管理系统;数据库;E-R模型;表的关系目 录摘要I目录II一、需求分析11.1调查用户需求11.2系统功能的设计和划分31.2.1画出每个子系
6、统的数据流图31.2.2写出系统各实体和联系的数据字典6二、概念结构设计92.1设计出系统的局部E-R图92.2集成分E-R图,设计出基本E-R图12三、逻辑结构设计133.1设计系统的关系模型133.2在MySQL里,创建数据库和表133.3安全控制分析用户和权限,设计视图和存储过程16四、物理设计184.1物理设计阶段的目的与任务184.2数据库存储方面18五、数据库实施205.1基础数据的录入205.2数据库的试运行21六、数据的运行和维护246.1确定数据库的备份方案246.2检查数据的安全性、完整性控制25参考文献26心得体会27一 、需求分析1.1 调查用户需求本系统的最终用户为宿
7、舍楼管理员,本宿舍楼的学生。根据我们日常生活中的经验,结合对自己学校宿舍楼管理老师的咨询和对同宿舍楼同学的调查,得出用户的下列实际要求:1、 宿舍楼的基本情况学生住在宿舍楼中,每栋宿舍楼都会有若干名老师负责本宿舍楼的日常管理。一、 学生的基本信息: 入校时,每位同学都有唯一的学号,并被分配到指定的宿舍楼和指定的宿舍,也会有一个宿舍号,其入校时间就是他的入住时间。另外,为了管理上的方便,同一院系的学生的宿舍一般在一起,相应地会有其所在的院系名称。二、 宿舍的基本信息:每间宿舍都有唯一的宿舍号,入校时,宿舍会装公用电话机,相应地就有宿舍电话号码。三、 宿舍财产的基本信息:每个宿舍的财产属于学校,比
8、如电灯,床铺,柜子,桌椅等,为了对不同的财产进行区分,可以为每种财产分配不同的财产号。这样有利于财产的报修和管理。四、 快件收发的基本信息:每栋宿舍楼都有邮件收发的管理,当本楼的同学有信件时,相应的会有信件的到达时间,接受信件的同学姓名和他所在的宿舍号。有时,同一个学生有多封信件需要接收,需要表示一个同学有多少封信件。当信件接收后,应有一个接收信件的时间,表示信件已成功到达指定的同学手中。五、 报修的基本信息:宿舍楼中经常出现财产的损坏,比如灯泡坏了,厕所的马桶出故障了等,这时,同学们需要将财产损坏情况报告给宿舍楼管理员,以便学校派人进行维修。这时,需要记录报修的宿舍号和损坏的财产编号,同时记
9、录报修的时间和损坏的原因。当损坏的财产维修完毕后,应记录解决时间,表示该报修成功解决。六、 夜归的基本信息:宿舍楼在指定的时间关门(比如晚上12点),若有同学晚于关门时间会宿舍,需通知宿舍楼管理员,同时应登记晚归学生姓名,宿舍号,时间和晚归原因,以利于学校的管理和查证。七、 离校的基本信息:每当放寒假或暑假时,同学们大部分都会回家;每当“五一”或“十一”放假时,同学们也有很多不会留在宿舍。这时,为加强学校对同学假期安全的管理,离校的同学应登记离校时间,待返校后记录返校时间,以便学校查证和管理。12、 用户对系统的要求一、宿舍楼管理员: a.信息要求:宿舍楼管理员能查询上面提到的宿舍楼的所有相关
10、信息,包括某一学号的学生在宿舍楼中住宿的详细信息,快件收发的所有信息,报修的所有信息,夜归的详细信息和学生离返校的信息。以利于对整个宿舍楼的全面管理。b.处理要求:当学生基本信息发生变化时,宿舍楼管理员能对其进行修改。比如,某些同学搬到其他的宿舍中去,他们在本宿舍楼中相应的记录就应该删去;或者学生转换专业,他们记录中院系的信息也要作相应的修改等等。当宿舍楼的电话号码发生变更时,宿舍楼管理员能根据有关证明做出修改。当快件到达本宿舍楼时,宿舍楼管理员应依据到达快件的相关信息在快件信息中插入一条记录,当同学们接收快件后,管理员应登记快件的接收时间,表明该信件已成功到达收信人的手中。当宿舍财产报修及时
11、解决后,管理员应登记解决时间,表明该报修问题已成功解决。c安全性与完整性要求:安全性要求:1.系统应设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;2.系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;3.系统应对不同用户设置不同的权限,区分不同的用户,如区分普通用户(学生),管理员。完整性要求:1.各种信息记录的完整性,信息记录内容不能为空;2.各种数据间相互的联系的正确性;3.相同的数据在不同记录中的一致性。二、本宿舍楼的学生: a.信息要求:本宿舍楼的学生能查询其所在的宿舍的所有信息,能查询本楼的指定宿舍的电话号码以利
12、于同楼宿舍间的通信。能查询自己的快件信息。能查询自己的夜归记录和离返校记录。b.处理要求:本宿舍楼的学生能在报修信息表中插入报修信息,表示本宿舍的财产发生了损毁需要学校派人维修。学生离校时,能在离返校记录表中插入离校时间;学生返校后,能在离返校记录表中插入返校时间,表示已经回校。21.2系统功能的设计和划分1.2.1画出每个子系统的数据流图各部分完成的功能如下: i、用户管理部分 1、处理用户注册 2、处理用户登录 3、用户可以查询学生信息。 4、用户可以查询快件信息。 5、用户可以提交与查询报修信息。 6、用户可以插入与删除用户自己的离返校信息。 7、用户可以修改用户自己密码。ii、管理员管
13、理部分 1、处理管理员登录 2、管理员可以查询学生信息。 3、管理员可以发布与更新快件信息。4、管理员可以插入、修改与查询报修信息。 5、管理员可以插入与查询学生夜归信息。6、管理员可以查询在校与离校学生信息。7、管理员可以修改管理员密码。iii、数据流图图1-1 报修分数据流图3图1-2 快件分数据流图图1-3离返校分数据流图4图1-4 夜归分数据流图图1-5 总数据流图51.2.2写出系统各实体和联系的数据字典1.数据项住宿学生数据字典:属性名存储代码类型长度备注学号Snochar20住宿学生学号姓名Snamechar20住宿学生姓名性别Ssexchar4专业Sdeptchar40学生专业
14、宿舍号Dnochar6住宿学生宿舍号入住时间Scheckindate8新生搬入时间宿舍数据字典:属性名存储代码类型长度备注宿舍号Dnochar6宿舍电话Dphonechar15宿舍财产数据字典:属性名存储代码类型长度备注物品号PnoInt2宿舍物品编号物品名Pnamechar20宿舍物品名邮件快递数据字典:属性名存储代码类型长度备注姓名Snamechar20收件人姓名宿舍号Dnochar6收件人宿舍号到达时间Marrivedate8邮件快递到达时间接收时间Mreceivedate8收件人接收时间邮件数量Mnumbertinyint2学生收到邮件数量报修数据字典:属性名存储代码类型长度备注宿舍号
15、Dnochar6报修人宿舍号物品号PnoInt2报修物品编号提交日期Rsubmitdate 8报修提交日期解决日期Rsolvedate8问题解决日期报修原因Rreasonchar50物品损坏原因6晚归数据字典:属性名存储代码类型长度备注学号Snochar20晚归学生姓名宿舍号Dnochar6晚归学生宿舍号晚归时间Btimetimestamp14学生晚归时间晚归原因BreasonrChar 10学生晚归原因离校数据字典:属性名存储代码类型长度备注学号Snochar20离校学生姓名宿舍号Dnochar6离校学生宿舍号离校时间Ltimedate 8学生离校时间返回时间Lreturndate8学生返校
16、时间用户数据字典:属性名存储代码类型长度备注用户IDUnamechar20用户密码Upasswordchar20用户类型Utypetnyint 1普通或超级用户2.数据结构数据结构名组成用户信息用户ID,用户密码,用户类型(普通用户,管理员)住宿学生信息学号,姓名,性别,专业,宿舍号,入住时间宿舍信息宿舍号,宿舍电话宿舍财产信息物品号,物品名邮件快递信息姓名,宿舍号,到达时间,接收时间,邮件数量报修信息宿舍号,物品号,提交日期,解决日期,报修原因夜归信息学号,宿舍号,晚归时间,晚归原因离校信息学号,宿舍号,离校时间,返回时间73.数据流数据流名数据流来源数据流去向组成登记报修信息学生学生报修登
17、记表报修信息查询报修信息学生报修信息表管理员报修信息登记已修信息管理员学生报修登记表已修信息登记快件信息管理员邮件快递表快件信息收取快件邮件快递表学生快件信息登记确认信息学生邮件快递表确认信息登记夜归信息管理员夜归登记表夜归信息查询夜归信息夜归登记表管理员夜归信息登记离返校信息学生离返校登记表离返校信息查询离返校信息离返校信息登记表学生离返校信息查询离返校信息离返校信息登记表管理员离返校信息4.数据存储数据存储名输入的数据流输出的数据流组成学生报修登记表报修信息已修信息报修信息报修信息已修信息邮件快递表快件信息快件信息确认信息快件信息确认信息夜归登记表夜归信息夜归信息夜归信息离返校登记表离返校
18、信息离返校信息离返校信息5.处理过程处理过程名输入数据流输出数据流登记报修报修信息报修信息查询报修报修信息报修信息登记已修信息已修信息已修信息收取快件快件信息快件信息登记快件信息快件信息快件信息登记夜归夜归信息夜归信息查询夜归夜归信息夜归信息登记离返校信息离返校信息离返校信息查询离返校信息(管理员)离返校信息离返校信息查询离返校信息(学生)离返校信息离返校信息8 二、概念结构设计2.1设计出系统的局部E-R图分E-R图图2-1 学生住宿信息管理子系统图2-2 报修子系统9图2-3 收取快件子系统图2-4 离返校子系统10图2-5 夜归管理子系统112.2集成分E-R图,设计出基本E-R图 图2
19、-6 总E-R图12三、逻辑结构设计3.1设计系统的关系模型住宿学生(学号,姓名,性别,专业,宿舍号,入住时间)宿舍(宿舍号,宿舍电话)宿舍财产(物品号,物品名)邮件快递(姓名,宿舍号,到达时间,接收时间,邮件数量)报修(宿舍号,物品号,提交日期,解决日期,报修原因)夜归(学号,宿舍号,晚归时间,晚归原因)3.2在SQL Server 2000或SQL Server 2005里,创建数据库和表创建表格:住宿学生表:CREATE TABLE dbo.Snumber(Sno char(20) COLLATE Chinese_PRC_CI_AS NOT NULL,Sname char(20) COL
20、LATE Chinese_PRC_CI_AS NOT NULL,Ssex char(4) COLLATE Chinese_PRC_CI_AS NOT NULL,Sdept char(40) COLLATE Chinese_PRC_CI_AS NOT NULL,Dno char(6) COLLATE Chinese_PRC_CI_AS NOT NULL,Scheckin datetime NOT NULL, CONSTRAINT PK_Snumber PRIMARY KEY CLUSTERED (Sno ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMP
21、UTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY) ON PRIMARY宿舍表:CREATE TABLE dbo.Dnumber(Dno char(6) COLLATE Chinese_PRC_CI_AS NOT NULL,Dphone char(15) COLLATE Chinese_PRC_CI_AS NOT NULL, CONSTRAINT PK_Dnumber PRIMARY KEY CLUSTERED (Dno ASC13)WITH (PAD_INDEX =
22、 OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY) ON PRIMARY宿舍财产:CREATE TABLE dbo.Dmoney(Pname char(20) COLLATE Chinese_PRC_CI_AS NOT NULL,Pno int NOT NULL, CONSTRAINT PK_Dmoney_1 PRIMARY KEY CLUSTERED (Pno ASC)WITH (PAD_INDEX = OFF, S
23、TATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY) ON PRIMARY邮件快递表:CREATE TABLE dbo.Mail(Sname char(20) COLLATE Chinese_PRC_CI_AS NOT NULL,Dno char(6) COLLATE Chinese_PRC_CI_AS NOT NULL,Marrive datetime NOT NULL,Mreceive datetime NOT NULL,Mnum
24、ber tinyint NOT NULL, CONSTRAINT PK_Mail PRIMARY KEY CLUSTERED (Mnumber ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY) ON PRIMARY报修表:CREATE TABLE dbo.Repair(Dno char(10) COLLATE Chinese_PRC_CI_AS NOT NULL,Pno in
25、t NOT NULL,Rsubmit datetime NOT NULL,Rsolve datetime NOT NULL,Rreason char(50) COLLATE Chinese_PRC_CI_AS NOT NULL, CONSTRAINT PK_Repair PRIMARY KEY CLUSTERED (Dno ASC14)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY)
26、 ON PRIMARY夜归表:CREATE TABLE dbo.Backlate(Sno char(20) COLLATE Chinese_PRC_CI_AS NOT NULL,Dno char(6) COLLATE Chinese_PRC_CI_AS NOT NULL,Btime datetime NOT NULL,Breason char(10) COLLATE Chinese_PRC_CI_AS NOT NULL, CONSTRAINT PK_Getlate PRIMARY KEY CLUSTERED (Sno ASC)WITH (PAD_INDEX = OFF, STATISTICS_
27、NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY) ON PRIMARY用户表:CREATE TABLE dbo.Uerser(Uname char(20) COLLATE Chinese_PRC_CI_AS NOT NULL,Upassword char(20) COLLATE Chinese_PRC_CI_AS NOT NULL,Utype tinyint NOT NULL, CONSTRAINT PK_Uerser PRIMARY KEY CLU
28、STERED (Uname ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY) ON PRIMARY153.3安全控制分析用户和权限,设计视图和存储过程1.分超级用户和普通用户超级用户拥有查询,修改,录入信息等所有数据管理权限。普通用户只能拥有查询权限。2.视图设计学生信息视图(学号,姓名,性别,院系,宿舍号,宿舍电话)财产报修视图(宿舍号,财产名,报修时间,处理时间,报修原因
29、)学生夜归视图(学号,姓名,性别,院系,宿舍号,时间,夜归原因)16学生在校视图(学号,姓名,性别,院系,宿舍号,宿舍电话)17四、物理设计4.1物理设计阶段的目的与任务 数据库德物理设计就是为逻辑数据模型选取一个最适应应用要求的物理结构的过程,在这个阶段中要完成两大任务:(1) 确定数据库的物理结构,在关系数据库中主要是存取方法和存取结构;(2) 对物理结构进行评价,评价的重点是时间和空间效率。4.2数据库存储方面为数据库中各基本表建立的索引如下:1、由于基本表宿舍,入住学生的主码Sno,Dno经常在查询条件和连接操作的连接条件中出现,且它们的值唯一,考虑在两个属性上建立唯一性索引:2、基本
30、表管理员基本信息、贵重物品信息、宿舍信息的属性值几乎不会有什么变化,更新率很低,可考虑适当建立索引:3、基本表邮件快递数,报修信息,晚归信息,水电管理信息,卫生考核信息,的属性值经常发生变化,住宿学生信息,权衡系统为维护索引付出的代价,可考虑不建立索引,也可以适当建立索引。18五、数据库实施5.1 基础数据的录入学生信息表:宿舍表:宿舍财产表:19邮件快递表:宿舍物品维修表:夜归表:用户表:205.2 数据库的试运行可以在运行文本框中输入命令: Services.msc,打开服务管理,或开始-控制面板-管理工具-服务。图3-1 使用前必须保证此服务开启 图3-2 还要确定服务器处于启动状态21
31、图3-3 数据库连接界面 图3-4 附加数据库文件22图3-5 成功登陆数据库23六、 数据的运行和维护6.1确定数据库的备份方案为了保证SQL Server 数据的安全,数据库管理员应定期备份数据库,在不同情况下应采用不同备份数据库备份策略,一方面维持数据的安全性,另一方面也可保持SQL Server 能顺畅运行。尽最大的努力减少由于数据的损坏对用户造成的损失。数据的备份方案有很多,例如:1.完全数据库备份配合事务日志备份2.完全数据库备份配合差异式备份3. 文件或文件组备份其中我们小组采用了sql中其中一种备份方式:在SQL Server备份窗口,可以通过调度设置,将当前进行的备份处理设置
32、为定时自动处理的作用。具体的步骤如下:1. 展开一个服务器组。2. 展开一个服务器( SQL Server实例)。3. 展开【数据库】,右单击要备份的数据库,在弹出的菜单中选择【所有任务】【备份数据库】命令。4. 在随后打开的SQL Server备份窗口中,设置备份的相关选项。参见前面的备份方案单击【常规】选项卡,在【调度】项中,选中【调度】复选框,然后单击【调度】复选框后的【】按钮。在随后出现的【编辑调度】对话框中,设置时间调度安排。 5. 设置完成后,单击【确定】按钮,SQL Server将执行备份操作,同时在【SQL Server 代理】【作业 】中自动建立对应的作业。6. 在【SQL
33、Server 代理】【作业 】窗口中,可以像处理普通作业一样修改或删除数据库备份窗口中定义的备份计划。246.2检查数据的安全性、完整性控制我们已经在建表的同时确定了完整性约束条件,内容包括:SQL Server 2000中的数据完整性包括域完整性、实体完整性和参照完整性3种。(1) 域完整性域完整性为列级和元组级完整性。它为列或列组指定一个有效的数据集,并确定该列是否允许为空值(NULL)。(2) 实体完整性实体完整性为表级完整性,它要求表中所有的元组都应该有一个惟一标识,即主关键字。(3) 参照完整性参照完整性是表级完整性,它维护从表中的外码与主表中主码的相容关系。如果在主表中某一元组被外
34、码参照,那么这个元组既不能被删除,也不能更改其主码。25参考文献1 王珊 萨师煊,数据库系统概论(第四版),北京:高等教育出版社,2006年5月第4版2 何玉洁 编著,数据库原理与应用,北京:机械工业出版,2007年1月第1版3 杨冬青 马秀莉等译,数据库系统概念(原书第5版),北京:机械工业出版社,2007年3月第1版4 向中凡,SQL Server 2000实用操作与技巧,西安:西安电子科技大学出版社,20015 微软公司 著,数据库程序设计SQL SERVER2000数据库程序设计,北京:高等教育出版社,2004年26心得 体会 提高乐实地调查获得数据的能力方面。通过对多个宿舍楼的实地调
35、查和了解,采用询问调查记录的方式,从宿管员和老师同学们处获得了关于宿舍管理的业务流程和一些可靠表单,为学生宿舍管理系统开发的需求分析阶段,提供了一个很好的开始和充分的准备。加强了数据库系统理论知识和SQL相关功能的理解。在课堂上关于数据库系统的理论知识及相关功能,大家都停留在知识层面并不能很好的灵活应用,如存储过程。通过本次课程设计的实践,很好的将所学知识通过实际操作进行理解消化掌握在进行,在进行对数据库及其对象做的相应处理时,能够熟练的应用理论知识,达到知行合一,并进一步掌握相关的SQL语句,高校学生公寓管理系统开发的过程中牵涉到相当多基本表的建立,视图,以及存储过程的设计,系统开发使得对数据库系统及SQL语句的操作更熟练。27