《数据库课程设计-高校学生公寓管理系统共16页.doc》由会员分享,可在线阅读,更多相关《数据库课程设计-高校学生公寓管理系统共16页.doc(16页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、如有侵权,请联系网站删除,仅供学习与交流数据库课程设计-高校学生公寓管理系统【精品文档】第 16 页吕梁学院计算机科学与技术系数据库原理数据库设计设计题目 专业班级 小组编号 指导教师 二一四年十一月三十日高校学生公寓管理系统摘 要 随着高校的不断发展,学校招生人数也在不断增长。为了便于管理学生的住宿问题,我们设计了学生公寓管理系统,借助数据库技术让学生公寓的管理更加方便,同时也有助于宿舍和学生信息的及时更新。 本文介绍了在SQL sever2005环境下采用“自下而上地总体规划,自下而上地应用开发”的策略开发一个管理信息系统的过程。本文介绍了学生公寓公寓管理系统的需求分析,部分主要是用户的要
2、求及功能划分:系统设计部分主要介绍了系统功能设计和数据库设计;系统实现部分包括数据库的创建及一些数据库技术运用。关键词:学生公寓管理系统;数据库;E-R模型;表的关系目 录摘要I目录II一、需求分析11.1调查用户需求11.2系统功能的设计和划分31.2.1画出每个子系统的数据流图31.2.2写出系统各实体和联系的数据字典6二、概念结构设计92.1设计出系统的局部E-R图92.2集成分E-R图,设计出基本E-R图12三、逻辑结构设计133.1设计系统的关系模型133.2在SQL Server 2008里,创建数据库和表133.3安全控制分析用户和权限,设计视图和存储过程16四、物理设计184.
3、1物理设计阶段的目的与任务184.2数据库存储方面18五、数据库实施205.1基础数据的录入20六、数据的运行和维护246.1确定数据库的备份方案246.2检查数据的安全性、完整性控制25参考文献26心得体会27课程设计分工安排姓名课程设计负责工作备注李占威高校学生公寓管理系统报告的整体设计、需求分析、监督进度等等组长吉闫军概念结构设计、设计出系统的E-R图。组员杨凯逻辑结构设计、创建数据库和表、设计视图和存储过程等等。组员李世虎数据库实施、基础数据的录入、数据库的试运行。组员田烨何子元数据的运行和维护、确定数据库的备份方案、等等。组员李蓉 段圣蒙数据的运行和维护、确定数据库的备份方案、等等。
4、组员一 、需求分析1.1 调查用户需求本系统的最终用户为宿舍楼管理员,本宿舍楼的学生。根据我们日常生活中的经验,结合对自己学校宿舍楼管理老师的咨询和对同宿舍楼同学的调查,得出用户的下列实际要求:1、 宿舍楼的基本情况学生住在宿舍楼中,每栋宿舍楼都会有若干名老师负责本宿舍楼的日常管理。一、 学生的基本信息: 入校时,每位同学都有唯一的学号,并被分配到指定的宿舍楼和指定的宿舍,也会有一个宿舍号,其入校时间就是他的入住时间。另外,为了管理上的方便,同一院系的学生的宿舍一般在一起,相应地会有其所在的院系名称。二、 宿舍的基本信息:每间宿舍都有唯一的宿舍号,入校时,宿舍会装公用电话机,相应地就有宿舍电话
5、号码。三、 宿舍财产的基本信息:每个宿舍的财产属于学校,比如电灯,床铺,柜子,桌椅等,为了对不同的财产进行区分,可以为每种财产分配不同的财产号。这样有利于财产的报修和管理。四、 报修的基本信息:宿舍楼中经常出现财产的损坏,比如灯泡坏了,厕所的马桶出故障了等,这时,同学们需要将财产损坏情况报告给宿舍楼管理员,以便学校派人进行维修。这时,需要记录报修的宿舍号和损坏的财产编号,同时记录报修的时间和损坏的原因。当损坏的财产维修完毕后,应记录解决时间,表示该报修成功解决。五、 夜归的基本信息:宿舍楼在指定的时间关门(比如晚上12点),若有同学晚于关门时间会宿舍,需通知宿舍楼管理员,同时应登记晚归学生姓名
6、,宿舍号,时间和晚归原因,以利于学校的管理和查证。六、 离校的基本信息:每当放寒假或暑假时,同学们大部分都会回家;每当“五一”或“十一”放假时,同学们也有很多不会留在宿舍。这时,为加强学校对同学假期安全的管理,离校的同学应登记离校时间,待返校后记录返校时间,以便学校查证和管理。七、 宿舍卫生情况评比 每周定期对每个宿舍的卫生进行评比。并通报,以此来给同学们为了宿舍的干净、温馨辅助自己的努力。 2、 用户对系统的要求一、宿舍楼管理员: a.信息要求:宿舍楼管理员能查询上面提到的宿舍楼的所有相关信息,包括某一学号的学生在宿舍楼中住宿的详细信息,快件收发的所有信息,报修的所有信息,夜归的详细信息和学
7、生离返校的信息。以利于对整个宿舍楼的全面管理。b.处理要求:当学生基本信息发生变化时,宿舍楼管理员能对其进行修改。比如,某些同学搬到其他的宿舍中去,他们在本宿舍楼中相应的记录就应该删去;或者学生转换专业,他们记录中院系的信息也要作相应的修改等等。当宿舍楼的电话号码发生变更时,宿舍楼管理员能根据有关证明做出修改。当宿舍财产报修及时解决后,管理员应登记解决时间,表明该报修问题已成功解决。c安全性与完整性要求:安全性要求:1.系统应设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;2.系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容
8、;3.系统应对不同用户设置不同的权限,区分不同的用户,如区分普通用户(学生),管理员。完整性要求:1.各种信息记录的完整性,信息记录内容不能为空;2.各种数据间相互的联系的正确性;3.相同的数据在不同记录中的一致性。二、本宿舍楼的学生: a.信息要求:本宿舍楼的学生能查询其所在的宿舍的所有信息,能查询本楼的指定宿舍的电话号码以利于同楼宿舍间的通信。能查询自己的快件信息。能查询自己的夜归记录和离返校记录。b.处理要求:本宿舍楼的学生能在报修信息表中插入报修信息,表示本宿舍的财产发生了损毁需要学校派人维修。学生离校时,能在离返校记录表中插入离校时间;学生返校后,能在离返校记录表中插入返校时间,表示
9、已经回校。21.2系统功能的设计和划分1.2.1画出每个子系统的数据流图各部分完成的功能如下:i、用户管理部分 1、处理用户注册 2、处理用户登录 3、用户可以查询学生信息。 4、用户可以查询卫生情况。 5、用户可以提交与查询报修信息。 6、用户可以插入与删除用户自己的离返校信息。 7、用户可以修改用户自己密码。ii、管理员管理部分 1、处理管理员登录 2、管理员可以查询学生信息。3、管理员可以插入、修改与查询报修信息。 4、管理员可以插入与查询学生夜归信息。5、管理员可以查询在校与离校学生信息。6、管理员可以修改管理员密码。iii、数据流图图1-1 报修分数据流图图1-2离返校分数据流图图1
10、-3 夜归分数据流图图1-4 总数据流图1.2.2写出系统各实体和联系的数据字典1.数据项住宿学生数据字典:属性名存储代码类型长度备注学号Snochar20住宿学生学号姓名Snamechar20住宿学生姓名性别Ssexchar4专业Sdeptchar40学生专业宿舍号Dnochar6住宿学生宿舍号入住时间Scheckindate8新生搬入时间宿舍数据字典:属性名存储代码类型长度备注宿舍号Dnochar6宿舍电话Dphonechar15宿舍财产数据字典:属性名存储代码类型长度备注物品号PnoInt2宿舍物品编号物品名Pnamechar20宿舍物品名报修数据字典:属性名存储代码类型长度备注宿舍号D
11、nochar6报修人宿舍号物品号PnoInt2报修物品编号提交日期Rsubmitdate 8报修提交日期解决日期Rsolvedate8问题解决日期报修原因Rreasonchar50物品损坏原因晚归数据字典:属性名存储代码类型长度备注学号Snochar20晚归学生姓名宿舍号Dnochar6晚归学生宿舍号晚归时间Btimetimestamp14学生晚归时间晚归原因BreasonrChar 10学生晚归原因离校数据字典:属性名存储代码类型长度备注学号Snochar20离校学生姓名宿舍号Dnochar6离校学生宿舍号离校时间Ltimedate 8学生离校时间返回时间Lreturndate8学生返校时间
12、卫生数据字典属性名存储代码类型长度备注宿舍长Sszchar20宿舍负责人宿舍号Dnochar6卫生情况宿舍号卫生情况Scondchar20被检查宿舍卫生用户数据字典:属性名存储代码类型长度备注用户IDUnamechar20用户密码Upasswordchar20用户类型Utypetnyint 1普通或超级用户2.数据结构数据结构名组成用户信息用户ID,用户密码,用户类型(普通用户,管理员)住宿学生信息学号,姓名,性别,专业,宿舍号,入住时间宿舍信息宿舍号,宿舍电话宿舍财产信息物品号,物品名卫生信息宿舍长,宿舍号,卫生情况报修信息宿舍号,物品号,提交日期,解决日期,报修原因夜归信息学号,宿舍号,晚
13、归时间,晚归原因离校信息学号,宿舍号,离校时间,返回时间3.数据流数据流名数据流来源数据流去向组成登记报修信息学生学生报修登记表报修信息查询报修信息学生报修信息表管理员报修信息登记已修信息管理员学生报修登记表已修信息登记快件信息管理员邮件快递表快件信息卫生信息管理员学生卫生信息登记确认信息学生邮件快递表确认信息登记夜归信息管理员夜归登记表夜归信息查询夜归信息夜归登记表管理员夜归信息登记离返校信息学生离返校登记表离返校信息查询离返校信息离返校信息登记表学生离返校信息查询离返校信息离返校信息登记表管理员离返校信息4.数据存储数据存储名输入的数据流输出的数据流组成学生报修登记表报修信息已修信息报修信
14、息报修信息已修信息邮件快递表快件信息快件信息确认信息快件信息确认信息夜归登记表夜归信息夜归信息夜归信息离返校登记表离返校信息离返校信息离返校信息5.处理过程处理过程名输入数据流输出数据流登记报修报修信息报修信息查询报修报修信息报修信息登记已修信息已修信息已修信息登记快件信息快件信息快件信息登记夜归夜归信息夜归信息查询夜归夜归信息夜归信息登记离返校信息离返校信息离返校信息查询离返校信息(管理员)离返校信息离返校信息查询离返校信息(学生)离返校信息离返校信息 二、 概念结构设计1 概念结构设计的方法与步骤2 概念结构设计的方法 设计概念结构通常有四类方法:自顶向下,自底向上,逐渐扩张以及混合策略。
15、本教学系统采用的是自底向上的方法。即首先定义全局的概念结构的框架,然后逐步细化。根据自顶向上地进行需求分析然后再自底上上地进行概念设计。2.1设计出系统的局部E-R图分E-R图图2-1 学生住宿信息管理子系统图2-2 报修子系统图2-3 收取快件子系统图2-4 离返校子系统图2-5 夜归管理子系统2.2集成分E-R图,设计出基本E-R图 图2-6 总E-R图三、 逻辑结构设计3.1设计系统的关系模型住宿学生(学号,姓名,性别,专业,宿舍号,入住时间)宿舍(宿舍号,宿舍电话)宿舍财产(物品号,物品名)邮件快递(宿舍长,宿舍号,卫生情况)报修(宿舍号,物品号,提交日期,解决日期,报修原因)夜归(学
16、号,宿舍号,晚归时间,晚归原因)3.2在SQL Server 2008里,创建数据库和表创建表格:住宿学生表:CREATE TABLE dbo.Snumber(Sno char(20) COLLATE Chinese_PRC_CI_AS NOT NULL,Sname char(20) COLLATE 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 Chin
17、ese_PRC_CI_AS NOT NULL,Scheckin datetime NOT NULL, CONSTRAINT PK_Snumber PRIMARY KEY CLUSTERED Sno 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.Dnumber(Dno char(6) COLLATE Chines
18、e_PRC_CI_AS NOT NULL,Dphone char(15) COLLATE Chinese_PRC_CI_AS NOT NULL, CONSTRAINT PK_Dnumber PRIMARY KEY CLUSTERED Dno 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.Dmoney(Pnam
19、e 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, 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)
20、COLLATE Chinese_PRC_CI_AS NOT NULL,Pno int 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 ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS =
21、ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY) 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 A
22、SC)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.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,
23、 CONSTRAINT PK_Uerser PRIMARY KEY CLUSTERED Uname ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY) ON PRIMARY3.3安全控制分析用户和权限,设计视图和存储过程1.分超级用户和普通用户超级用户拥有查询,修改,录入信息等所有数据管理权限。普通用户只能拥有查询权限。2.视图设计学生信息视图(学号,姓名,性别,院系,宿舍号,
24、宿舍电话)财产报修视图(宿舍号,财产名,报修时间,处理时间,报修原因)学生夜归视图(学号,姓名,性别,院系,宿舍号,时间,夜归原因)16学生在校视图(学号,姓名,性别,院系,宿舍号,宿舍电话)四、物理设计阶段4.1物理设计阶段的目的与任务 数据库德物理设计就是为逻辑数据模型选取一个最适应应用要求的物理结构的过程,在这个阶段中要完成两大任务:(1) 确定数据库的物理结构,在关系数据库中主要是存取方法和存取结构;(2) 对物理结构进行评价,评价的重点是时间和空间效率。4.2数据库存储方面为数据库中各基本表建立的索引如下:1、由于基本表宿舍,入住学生的主码Sno,Dno经常在查询条件和连接操作的连接
25、条件中出现,且它们的值唯一,考虑在两个属性上建立唯一性索引:2、基本表管理员基本信息、贵重物品信息、宿舍信息的属性值几乎不会有什么变化,更新率很低,可考虑适当建立索引:3、基本表报修信息,晚归信息,水电管理信息,卫生考核信息,的属性值经常发生变化,住宿学生信息,权衡系统为维护索引付出的代价,可考虑不建立索引,也可以适当建立索引。五、 数据库的实施与运行5.1 基础数据的录入学生信息表:宿舍表:宿舍财产表:宿舍物品维修表:夜归表:用户表:六、 数据的运行和维护6.1确定数据库的备份方案为了保证SQL Server 数据的安全,数据库管理员应定期备份数据库,在不同情况下应采用不同备份数据库备份策略
26、,一方面维持数据的安全性,另一方面也可保持SQL Server 能顺畅运行。尽最大的努力减少由于数据的损坏对用户造成的损失。数据的备份方案有很多,例如:1.完全数据库备份配合事务日志备份2.完全数据库备份配合差异式备份3. 文件或文件组备份其中我们小组采用了sql中其中一种备份方式:在SQL Server备份窗口,可以通过调度设置,将当前进行的备份处理设置为定时自动处理的作用。具体的步骤如下:1. 展开一个服务器组。2. 展开一个服务器( SQL Server实例)。3. 展开【数据库】,右单击要备份的数据库,在弹出的菜单中选择【所有任务】【备份数据库】命令。4. 在随后打开的SQL Serv
27、er备份窗口中,设置备份的相关选项。参见前面的备份方案单击【常规】选项卡,在【调度】项中,选中【调度】复选框,然后单击【调度】复选框后的【】按钮。在随后出现的【编辑调度】对话框中,设置时间调度安排。 5. 设置完成后,单击【确定】按钮,SQL Server将执行备份操作,同时在【SQL Server 代理】【作业 】中自动建立对应的作业。6. 在【SQL Server 代理】【作业 】窗口中,可以像处理普通作业一样修改或删除数据库备份窗口中定义的备份计划。6.2检查数据的安全性、完整性控制我们已经在建表的同时确定了完整性约束条件,内容包括:SQL Server 2008中的数据完整性包括域完整
28、性、实体完整性和参照完整性3种。(1) 域完整性域完整性为列级和元组级完整性。它为列或列组指定一个有效的数据集,并确定该列是否允许为空值(NULL)。(2) 实体完整性实体完整性为表级完整性,它要求表中所有的元组都应该有一个惟一标识,即主关键字。(3) 参照完整性参照完整性是表级完整性,它维护从表中的外码与主表中主码的相容关系。如果在主表中某一元组被外码参照,那么这个元组既不能被删除,也不能更改其主码。参考文献1 王珊 萨师煊,数据库系统概论(第四版),北京:高等教育出版社,2006年5月第4版心得 体会 提高乐实地调查获得数据的能力方面。通过对多个宿舍楼的实地调查和了解,采用询问调查记录的方
29、式,从宿管员和老师同学们处获得了关于宿舍管理的业务流程和一些可靠表单,为学生宿舍管理系统开发的需求分析阶段,提供了一个很好的开始和充分的准备。加强了数据库系统理论知识和SQL2005相关功能的理解。在课堂上关于数据库系统的理论知识及相关功能,大家都停留在知识层面并不能很好的灵活应用,如存储过程。通过本次课程设计的实践,很好的将所学知识通过实际操作进行理解消化掌握在进行,在进行对数据库及其对象做的相应处理时,能够熟练的应用理论知识,达到知行合一,并进一步掌握相关的SQL语句,高校学生公寓管理系统开发的过程中牵涉到相当多基本表的建立,视图,以及存储过程的设计,系统开发使得对数据库系统及SQL语句的操作更熟练。