信息工程学院oracle数据库课程设计学生宿舍管理系统数据库设计姓名: 2005544532 春江专业:计算机科学与技术指导老师:海霞完成日期: 2008.6.26摘要学生宿舍管理系统是应对学生宿舍管理的现代化、网络化,逐步摆脱当前学生宿舍管理的人工管理方式,提高学生宿舍管理效率而开发的,它包括宿舍学生基本信息管理、楼道工人基本信息管理、宿舍楼基本信息管理、宿舍基本信息管理、宿舍事故基本信息管理、宿舍楼物品出入基本信息管理、宿舍楼保卫处基本信息管理、宿舍配备物品及处理管理等八大功能模块,并提供了对各功能模块的查询和更新功能,且这两种功能基本上是通过存储过程来实现的,其中宿舍学生基本信息管理、宿舍基本信息管理是系统开发的重点。
该系统开发由系统需求分析阶段、概念设计阶段、逻辑设计阶段、数据库实施阶段、系统调试和测试阶段、参考文献、附录等阶段组成。
关键字:学生宿舍管理,宿舍管理现代化,宿舍管理网络化,人工管理,功能模块,存储过程目录1. 系统需求分析阶段 (1)1.1 引言 (1)1.2 目标与任务 (1)1.2.1 需求分析阶段的目标 (1)1.2.2 需求分析阶段的任务 (1)1.2.3 需求分析阶段成果 (2)2. 概念设计阶段 (11)2.1 引言 (11)2.2 概念模型设计 (12)2.3 新系统流程 (13)3.逻辑设计阶段 (14)3.1逻辑设计的任务和目标 (14)3.2数据组织 (14)3.2.1将E-R图转换为关系模型 (14)3.2.2模型优化 (15)3.2.3数据库模式定义 (16)3.2.4用户子模式设计 (16)3.3数据处理 (16)4.物理设计阶段 (17)4.1物理设计阶段的目标与任务 (17)4.2数据存储方面 (17)4.3系统功能模块 (17)4.3.1 楼道工人基本的信息查询和更新模块 (18)4.3.2 宿舍楼基本信息的查询和更新模块 (18)4.3.3 宿舍基本信息的查询和更新模块 (19)4.3.4 学生基本信息的查询和更新模块 (20)4.3.5 宿舍物品的查询和更新模块 (20)4.3.6 宿舍事故的查询和更新模块 (21)4.3.7 宿舍物品处理的查询和更新模块 (21)4.3.8 宿舍保卫处基本信息的查询和更新模块 (22)5.数据库实施阶段 (22)5.1建立数据库、数据表、视图、索引 (22)5.1.1 建立数据库 (22)5.1.2 建立数据表 (22)5.1.3 建立视图 (26)5.1.4 建立索引 (28)5.2数据入库 (28)5.3创建各个功能的存储过程 (29)6.系统调试和测试 (29)7.实习心得 (32)8.存在的问题及建议 (32)致 (33)参考文献 (33)附录1 数据库逻辑结构定义 (34)附录2 存储过程定义 (38)附录3 数据查看和存储过程功能的验证 (43)附录4 所有的SQL运行语句 (48)1. 系统需求分析阶段1.1 引言通过对北校区25个学生宿舍楼的实地调查,了解到现在的学生宿舍管理仍停留在完全的人工管理阶段,楼管处没有标准的住宿学生存档信息。
这中人工管理方式费时、费事、费力,造成工作效率低下。
开发出合适的学生宿舍管理系统,可以方便学生宿舍的管理,提高宿舍管理工作效率及查询效率。
1.2 目标与任务1.2.1 需求分析阶段的目标(1)了解目前宿舍管理的现状以及SQL Server 2000的功能和特点。
(2)通过实地调查和问答-记录的方式了解宿舍管理的工作业务流程,并记录和处理相关的数据。
(3)与指导教师交流个人想法,征求意见,改正不合理的地方,为下面的概念设计与逻辑设计奠定基础。
1.2.2 需求分析阶段的任务(1)处理对象:系统要处理的对象包括宿舍楼基本信息、学生基本信息、宿舍基本信息、楼道工作人员基本信息、宿舍保卫处基本信息、宿舍事故基本信息、物品出入基本信息等七个方面,各个对象包括信息如下所示(详细的数据见于数据字典):1.宿舍楼基本信息(Dormitory):包括宿舍楼编号、宿舍楼所在校区、宿舍楼再校区中区域、每一幢宿舍楼楼管处的、宿舍楼楼管员信息等方面,这样可以方便管理者对宿舍楼的管理,提高查询效率;2.学生基本信息(Student):包括学生编号、学生所在学院信息、学生、学生性别、学生来自省份、学生出生日期、学生入学时间、学生所学专业、所在班级等方面的信息,可以方便学信息的查询和更新;3.宿舍基本信息(Room,Fitment,FitmentDestruction,FitmentCompensate):宿舍基本信息包括四个数据结构(宿舍信息(Room),宿舍物品信息(Fitment),宿舍物品损坏信息(FitmentDestruction),宿舍损坏物品赔偿信息),每个数据结构中的数据项见数据字典;4.楼道工作人员基本信息(Worker):包括工作人员编号、工作人员、工作类型、工资、性别、联系方式、工作时间等数据项,可以方便管理人员对宿舍楼道工人的任用、信息查询及更改;5.宿舍保卫处基本信息(SafeGuard):包括保卫处名称、人员数目、负责人信息、联系等四方面的信息;6.宿舍事故基本信息(Accident,AccidentResearch,AccidentCompensate):事故信息包括三个数据结构(事故信息、事故处理信息、事故赔偿信息),具体的数据项见数据字典;物品出入基本信息(ArticalInOut):包括出入物品的学生信息、出入的物品信息、出入物品时的负责人信息、出入物品时间,尽量减少宿舍事故的发生,保障学生宿舍财产的安全。
(2)处理功能要求系统主要完成一下几个功能:1.宿舍楼基本信息查询与修改;2.学生基本信息查询与更新;3.每一幢宿舍楼中宿舍信息的查询与信息更新;4.宿舍保卫处基本信息的查询和修改;5.宿舍事故基本信息及事故处理信息的查询和修改;6.宿舍楼物品出入审批及记录;(3)安全性和完整性要求安全性先通过视图机制,不同的用户只能访问系统授权的视图,这样可提供系统数据一定程度上的安全性,再通过用户授权机制,欲用户登陆来识别用户级别,根据这个级别来分配用户权限,达到数据更高层次的安全功能。
完整性要求用于描述宿舍楼基本信息、学生基本信息、宿舍基本信息、楼道工作人员基本信息、宿舍保卫处基本信息、宿舍事故基本信息、物品出入基本信息中数据项能否为null,以及一些用户自定义完整性(符合实际要求),详细完整性要求见于系统的逻辑设计阶段。
1.2.3 需求分析阶段成果(1)体会与收获系统需求分析主要采取实地询问-记录和楼管处查询宿舍学生信息的方式,同时借鉴学长在做数据库开发这方面的经验。
通过实地调查和询问,了解目前学生宿舍管理的现状,以及目前学生宿舍管理中一些问题,并对实际查询业务实地参与,了解了学生、楼管员、宿舍管理者、宿舍保卫人员对系统的信息处理要求,以及他(她)们对现存人工管理方式不能满足信息处理要求的苦恼。
同时在调查中牵涉的许多的人际交流,恰当的询问方式,由于平时几乎没有做过这方面的调查,开始时有点胆怯和不知从何入手,但过了两三幢宿舍楼之后,开始的胆怯就感觉不到了。
(2)学生宿舍管理系统业务流程图新生入住宿舍业务流程图:查询业务流程图(查询宿舍学生信息、楼道工作人员信息、宿舍楼信息等):毕业生离宿业务流程图:楼道工作人员任用业务流程图:宿舍楼物品出入业务流程图:宿舍事故处理业务流程图:(3)数据流程图顶层数据流程图:第2层数据流程图:从学生角度出发第2层数据流程图:从管理者角度出发图2.3 从管理者角度出发的2层数据流程图第3层数据流程图:从新生角度出发第3层数据流程图:从毕业生角度出发第3层数据流程图:从宿舍楼物品出入出发第3层数据流程图:从宿舍事故角度出入出发第3层数据流程图:从楼道工作人员的任用角度出发第3层数据流程图:从管理者和外来访客的角度出发(4)数据字典(a)数据项:系统涉及的数据项有71项表1.1 数据项列表数据项编号数据项名数据项含义与其它数据项的关系存储结构别名DI-1 StuNo 学生编号char(9) 学号DI-2 DepName 学生所在学院char(20) 学院DI-3 StuName 学生char(10)DI-4 StuSex 学生性别char(2) 性别DI-5 StuHome 学生来自省份char(10) 祖籍DI-6 StuBorth 学生出生时间Date 出生日期DI-7 StuETime 学生入学时间Date 入学时间DI-8 StuPerfect 学生所在专业char(20) 专业DI-9 StuClass 学生所在班级编号Int 编号DI-10 WorNo 工作人员编号char(5) 编号DI-11 WorName 工作人员char(10)DI-12 WorType 工作类型char(8) 工作类型DI-13 WorWage 工作人员工资Int 月工资DI-14 WorSex 工作人员性别char(2) 性别DI-15 WorPhNo 工作人员联系方式char(12)DI-16 WorTime 工作人员工作时间char(30) 工作时间DI-17 RNo 宿舍编号char(6) 舍号DI-18 RHeader 舍长信息等于StuName char(10) 舍长DI-19 ROne 宿舍学生信息同上char(10) 舍员1 DI-20 RTwo 宿舍学生信息同上char(10) 舍员2 DI-21 RThree 宿舍学生信息同上char(10) 舍员3DI-22 RFour 宿舍学生信息同上char(10) 舍员4 DI-23 RFive 宿舍学生信息同上char(10) 舍员5 DI-24 RSix 宿舍学生信息同上char(10) 舍员6 DI-25 RGrade 宿舍学生所属年级等于StuETime char(4) 年级DI-26 RDepart 宿舍学生所在学院等于DepName char(20) 学院DI-27 RPerfect 宿舍学生所学专业等于StuPerfect char(20) 专业DI-28 RClass 学生所在班级编号等于StuClass char(2) 班级DI-29 DorNo 宿舍楼编号smallint 宿舍楼号DI-30 DorCampus 宿舍楼所属校区char(4) 校区DI-31 DorLocation 宿舍楼在校区位置char(4) 宿舍区位DI-32 DorPhNo 宿舍楼管处char(12)DI-33 DorAdminist 宿舍楼楼管员信息等于WorNo char(10) 楼管员DI-34 SGName 保卫处名称char(15) 名字DI-35 SGWorNum 保卫处人员总数Int 人员数目DI-36 SGHeader 保卫处负责人信息char(10) 负责人DI-37 SGPhone 保卫处char(12)DI-38 FitName 宿舍物品名称char(16) 宿舍物品DI-39 FitPrice 宿舍物品价格Float 价格DI-40 FitNum 每一种宿舍的数量Int 数量DI-41 FDFitment 损坏物品信息等于FitName char(16) 物品名DI-42 FDStudent 损坏的学生信息等于StuNo char(9) 学生DI-43 FDRoom 损坏物品宿舍信息等于RNo char(6) 舍号DI-44 FDFitNum 损坏物品的数量Int 数量DI-45 FCompFit 赔偿物品信息等于FitName char(16) 物品名DI-46 FCompStu 需赔偿学生信息等于StuNo char(9) 学生DI-47 FCompMon 赔偿价格Float 赔偿价格DI-48 FCompPrin 赔偿负责人信息等于WorNo char(10) 负责人DI-49 FCompDate 赔偿日期Date 日期DI-50 FCompNum 赔偿物品数量Int 数量DI-51 AcNo 事故编号int 编号DI-52 AcType 事故类型char(10) 类型DI-53 AcArtical 事故损失物品char(30) 物品名DI-54 AcArNum 事故损失物品数量Int 数量DI-55 AcStu 事故受害学生等于StuNo char(9) 学生DI-56 AcDate 事故发生日期Date 日期DI-57 AcPrin 事故负责人信息等于SGHeader char(15) 负责人DI-58 AcStuPh 受害人联系方式char(12) 学生DI-59 AcVerify 事故是否属实Bool 核查DI-60 ARNo 事故调查编号char(4) 编号DI-61 ARName 事故调查名称char(15) 调查DI-62 ARPrin 事故调查负责人等于SGHeader char(10) 负责人DI-63 ARResult 事故调查结果Bool 结果DI-64 ACStu 事故赔偿学生信息等于StuNo char(10) 学生DI-65 ACArtical 事故赔偿物品信息char(30) 物品名DI-66 ACDate 事故赔偿日期Date 日期DI-67 ACPrin 事故赔偿负责单位等于SGHeader char(15) 负责单位DI-68 AIOStu 要求物品出入学生等于StuNo char(10) 学生DI-69 AIOArtical 出入物品信息char(20) 物品名DI-70 AIOPrin 出入物品审查人等于WorNo char(10) 负责人DI-71 AIODate 出入物品日期Date 日期DI-72 AIONo 物品出入序号Int 序号(b)数据结构:表1.2 数据结构列表数据结构编号数据结构名数据结构含义组成DS-1 Student 宿舍学生信息StuNo,DepName,StuName,StuSex,StuHome, StuBorth,StuETime,StuPerfect,StuClassDS-2 Worker 宿舍楼工作人员信息WorTime,WorName,WorType, WorWage,WorSex,WorPhNo,WorNoDS-3 Room 宿舍信息RNo,RHeader,ROne, RClass, RThree,RFour,RFive,RSix,RGrade, RDepart,RPerfect,RTwo,DS-4 Dormitory 宿舍楼信息DorNo,DorCampus,DorPhNo DorLocation,DorAdministDS-5 SafeGuard 宿舍保卫处信息SGName,SGWorNum,SGHeader,SGPhone DS-6 Fitment 宿舍物品配备信息FitName,FitPrice,FitNumDS-7 FitmentDestruction 宿舍物品损坏信息FDFitment,FDStudent,FDRoom,FDFitNum数据结构编号数据结构名数据结构含义组成DS-8 FitmentCompensate 宿舍损坏物品赔偿信息FCompFit,FCompStu,FCompPrin,FCompDate,FCompNumDS-9 Accident 宿舍事故注册信息AcNo,AcType, AcStu,AcDate, AcArtical,AcVerify,AcPrin, AcArNum,AcStuPhDS-10 AccidentResearch 宿舍事故调查信息ARNo,ARName,ARPrin,ARResultDS-11 AccidentCompensate 事故损失物品赔偿信息ACStu,ACArtical,ACDate,ACPrinDS-12 ArticalInOut 宿舍楼物品出入信息AIOStu,AIOArtical,AIOPrin,AIODate,AIONo (5)处理逻辑描述(判定表或判定树)表1.3 处理逻辑列表2. 概念设计阶段2.1 引言概念设计阶段主要是将需求分析阶段得到的用户需求抽象为信息结构(概念模型)的过程,它是整个数据库设计的关键,包括概念模型设计和新系统流程两个阶段。