學生宿舍管理系統(tǒng)數(shù)據(jù)庫課程設計_第1頁
學生宿舍管理系統(tǒng)數(shù)據(jù)庫課程設計_第2頁
學生宿舍管理系統(tǒng)數(shù)據(jù)庫課程設計_第3頁
學生宿舍管理系統(tǒng)數(shù)據(jù)庫課程設計_第4頁
學生宿舍管理系統(tǒng)數(shù)據(jù)庫課程設計_第5頁
已閱讀5頁,還剩19頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

學生宿舍管理系統(tǒng)數(shù)據(jù)庫課程設計學生宿舍管理系統(tǒng)是應對學生宿舍管理的現(xiàn)代化、網(wǎng)絡化,逐步擺脫當前學生宿舍管理的人工管理方式,提高學生宿舍管理效率而開發(fā)的,它包括宿舍學生根本信息管理、樓道工人根本信息管理、宿舍樓根本信息管理、宿舍根本信息管理、宿舍事故根本信息管理、宿舍樓物品出入根本信息管理、宿舍樓保衛(wèi)處根本信息管理、宿舍配備物品及處理管理等八大功能模塊,并提供了對各功能模塊的查詢和更新功能,且這兩種功能根本上是通過存儲過程來實現(xiàn)的,其中宿舍學生根本信息管理、宿舍根本信息管理是系統(tǒng)開發(fā)的重點。該系統(tǒng)開發(fā)由系統(tǒng)需求分析、概念設計、邏輯設計、數(shù)據(jù)庫實施、系統(tǒng)調(diào)試和測試階段組成。1.1系統(tǒng)需求分析通過對兩個校區(qū)15個學生宿舍樓的實地調(diào)查,了解到現(xiàn)在的學生宿舍管理仍停留在完全的人工管理階段,樓管處沒有標準的住宿學生存檔信息。這中人工管理方式費時、費事、費力,造成工作效率低下。開發(fā)出適宜的學生宿舍管理系統(tǒng),可以方便學生宿舍的管理,提高宿舍管理工作效率。1.1.1需求分析階段的目標〔1〕了解目前宿舍管理的現(xiàn)狀以及SQLSERVER2000的功能和特點?!?〕通過實地調(diào)查和問答-記錄的方式了解宿舍管理的工作業(yè)務流程,并記錄和處理相關的數(shù)據(jù)。〔3〕與指導教師交流個人想法,征求意見,改正不合理的地方,為下面的概念設計與邏輯設計奠定根底。需求分析階段的任務1、處理對象:系統(tǒng)要處理的對象包括宿舍樓根本信息、學生根本信息、宿舍根本信息、樓道工作人員根本信息、宿舍保衛(wèi)處根本信息、宿舍事故根本信息、物品出入根本信息等七個方面,各個對象包括信息如下所示〔詳細的數(shù)據(jù)見于數(shù)據(jù)字典〕:〔1〕.宿舍樓根本信息(Dormitory):包括宿舍樓編號、宿舍樓所在校區(qū)、宿舍樓在校區(qū)中區(qū)域、每一幢宿舍樓樓管處的、宿舍樓樓管員信息等方面,這樣可以方便管理者對宿舍樓的管理,提高查詢效率;〔2〕.學生根本信息(Student):包括學生編號、學生所在學院信息、學生姓名、學生性別、學生來自省份、學生出生日期、學生入學時間、學生所學專業(yè)、所在班級等方面的信息,可以方便學信息的查詢和更新;〔3〕.宿舍根本信息(Room,F(xiàn)itment,F(xiàn)itmentDestruction,F(xiàn)itmentCompensate):宿舍根本信息包括四個數(shù)據(jù)結構〔宿舍信息(Room),宿舍物品信息(Fitment),宿舍物品損壞信息(FitmentDestruction),宿舍損壞物品賠償信息〕,每個數(shù)據(jù)結構中的數(shù)據(jù)項見數(shù)據(jù)字典?!?〕.樓道工作人員根本信息(Worker):包括工作人員編號、工作人員姓名、工作類型、工資、性別、聯(lián)系方式、工作時間等數(shù)據(jù)項,可以方便管理人員對宿舍樓道工人的任用、信息查詢及更改?!?〕.宿舍保衛(wèi)處根本信息(SafeGuard):包括保衛(wèi)處名稱、人員數(shù)目、負責人信息、聯(lián)系等四方面的信息。〔6〕.宿舍事故根本信息(Accident,AccidentResearch,AccidentCompensate):事故信息包括三個數(shù)據(jù)結構〔事故信息、事故處理信息、事故賠償信息〕,具體的數(shù)據(jù)項見數(shù)據(jù)字典。〔7〕.物品出入根本信息(ArticalInOut):包括出入物品的學生信息、出入的物品信息、出入物品時的負責人信息、出入物品時間.盡量減少宿舍事故的發(fā)生,保障學生宿舍財產(chǎn)的平安。2.處理功能要求系統(tǒng)主要完成以下幾個功能:(1)宿舍樓根本信息查詢與修改;(2)學生根本信息查詢與更新;(3)每一幢宿舍樓中宿舍信息的查詢與信息更新;(4)宿舍保衛(wèi)處根本信息的查詢和修改;(5)宿舍事故根本信息及事故處理信息的查詢和修改;(6)宿舍樓物品出入審批及記錄;1.平安性和完整性要求平安性先通過視圖機制,不同的用戶只能訪問系統(tǒng)授權的視圖,這樣可提供系統(tǒng)數(shù)據(jù)一定程度上的平安性,再通過用戶授權機制,欲用戶登陸來識別用戶級別,根據(jù)這個級別來分配用戶權限,到達數(shù)據(jù)更高層次的平安保密功能。完整性要求用于描述宿舍樓根本信息、學生根本信息、宿舍根本信息、樓道工作人員根本信息、宿舍保衛(wèi)處根本信息、宿舍事故根本信息、物品出入根本信息中數(shù)據(jù)項能否為null,以及一些用戶自定義完整性〔符合實際要求〕,詳細完整性要求見于系統(tǒng)的邏輯設計階段。學生宿舍管理系統(tǒng)業(yè)務流程圖1.新生入住宿舍業(yè)務流程圖:圖1.1新生入住業(yè)務流程圖圖1.1新生入住業(yè)務流程圖數(shù)據(jù)流程圖圖1.2頂層數(shù)據(jù)流程圖頂層數(shù)據(jù)流程圖:圖1.2頂層數(shù)據(jù)流程圖1.1.5數(shù)據(jù)字典1.數(shù)據(jù)項:系統(tǒng)涉及的數(shù)據(jù)項有72項表1-1數(shù)據(jù)項列表數(shù)據(jù)項編號數(shù)據(jù)項名數(shù)據(jù)項含義與其它數(shù)據(jù)項的關系存儲結構別名DI-1StuNo學生編號char(9)學號DI-2DepName學生所在學院char(20)學院DI-3StuName學生姓名char(10)姓名DI-4StuSex學生性別char(2)性別DI-5StuHome學生來自省份char(10)祖籍DI-6StuBorth學生出生時間Date出生日期DI-7StuETime學生入學時間Date入學時間DI-8StuPerfect學生所在專業(yè)char(20)專業(yè)DI-9StuClass學生所在班級編號Int編號DI-10WorNo工作人員編號char(5)編號DI-1WorName工作人員姓名char(10)姓名DI-2WorType工作類型char(8)工作類型DI-3WorWage工作人員工資Int月工資DI-14WorSex工作人員性別char(2)性別DI-15WorPhNo工作人員聯(lián)系方式char(2)DI-16WorTime工作人員工作時間char(30)工作時間DI-17RNo宿舍編號char(6)舍號DI-18RHeader舍長信息等于StuNamechar(10)舍長DI-19ROne宿舍學生信息同上char(10)舍員1DI-20RTwo宿舍學生信息同上char(10)舍員2DI-21RThree宿舍學生信息同上char(10)舍員3DI-22RFour宿舍學生信息同上char(10)舍員4DI-23RFive宿舍學生信息同上char(10)舍員5DI-24RSix宿舍學生信息同上char(10)舍員6DI-25RGrade宿舍學生所屬年級等于StuETimechar(4)年級DI-26RDepart宿舍學生所在學院等于DepNamechar(20)學院DI-27RPerfect宿舍學生所學專業(yè)等于StuPerfectchar(20)專業(yè)DI-28RClass學生所在班級編號等于StuClasschar(2)班級DI-29DorNo宿舍樓編號smallint宿舍樓號DI-30DorCampus宿舍樓所屬校區(qū)char(4)校區(qū)DI-31DorLocation宿舍樓在校區(qū)位置char(4)宿舍區(qū)位DI-32DorPhNo宿舍樓管處char(2)DI-33DorAdminist宿舍樓樓管員信息等于WorNochar(10)樓管員DI-34SGName保衛(wèi)處名稱char(15)名字DI-35SGWorNum保衛(wèi)處人員總數(shù)Int人員數(shù)目DI-36SGHeader保衛(wèi)處負責人信息char(10)負責人DI-37SGPhone保衛(wèi)處char(2)DI-38FitName宿舍物品名稱char(16)宿舍物品DI-39FitPrice宿舍物品價格Float價格DI-40FitNum每一種宿舍的數(shù)量Int數(shù)量DI-41FDFitment損壞物品信息等于FitNamechar(16)物品名DI-42FDStudent損壞的學生信息等于StuNochar(9)學生DI-43FDRoom損壞物品宿舍信息等于RNochar(6)舍號DI-44FDFitNum損壞物品的數(shù)量Int數(shù)量DI-45FCompFit賠償物品信息等于FitNamechar(16)物品名DI-46FCompStu需賠償學生信息等于StuNochar(9)學生DI-47FCompMon賠償價格Float賠償價格DI-48FCompPrin賠償負責人信息等于WorNochar(10)負責人DI-49FCompDate賠償日期Date日期DI-50FCompNum賠償物品數(shù)量Int數(shù)量DI-51AcNo事故編號int編號DI-52AcType事故類型char(10)類型DI-53AcArtical事故損失物品char(30)物品名DI-54AcArNum事故損失物品數(shù)量Int數(shù)量DI-55AcStu事故受害學生等于StuNochar(9)學生DI-56AcDate事故發(fā)生日期Date日期DI-57AcPrin事故負責人信息等于SGHeaderchar(15)負責人DI-58AcStuPh受害人聯(lián)系方式char(2)學生DI-59AcVerify事故是否屬實Bool核查DI-60ARNo事故調(diào)查編號char(4)編號DI-61ARName事故調(diào)查名稱char(15)調(diào)查DI-62ARPrin事故調(diào)查負責人等于SGHeaderchar(10)負責人DI-63ARResult事故調(diào)查結果Bool結果DI-64ACStu事故賠償學生信息等于StuNochar(10)學生DI-65ACArtical事故賠償物品信息char(30)物品名DI-66ACDate事故賠償日期Date日期DI-67ACPrin事故賠償負責單位等于SGHeaderchar(15)負責單位DI-68AIOStu要求物品出入學生等于StuNochar(10)學生DI-69AIOArtical出入物品信息char(20)物品名DI-70AIOPrin出入物品審查人等于WorNochar(10)負責人DI-71AIODate出入物品日期Date日期DI-72AIONo物品出入序號Int序號2.數(shù)據(jù)結構:表1-2數(shù)據(jù)結構列表數(shù)據(jù)結構編號數(shù)據(jù)結構名數(shù)據(jù)結構含義組成DS-1Student宿舍學生信息StuNo,DepName,StuName,StuSex,StuHome,StuBorth,StuETime,StuPerfect,StuClassDS-2Worker宿舍樓工作人員信息WorTime,WorName,WorType,WorWage,WorSex,WorPhNo,WorNoDS-3Room宿舍信息RNo,RHeader,ROne,RClass,RThree,RFour,RFive,RSix,RGrade,RDepart,RPerfect,RTwo,DS-4Dormitory宿舍樓信息DorNo,DorCampus,DorPhNoDorLocation,DorAdministDS-5SafeGuard宿舍保衛(wèi)處信息SGName,SGWorNum,SGHeader,SGPhoneDS-6Fitment宿舍物品配備信息FitName,FitPrice,FitNumDS-7FitmentDestruction宿舍物品損壞信息FDFitment,FDStudent,FDRoom,FDFitNumDS-8FitmentCompensate宿舍損壞物品賠償信息FCompFit,FCompStu,FCompPrin,FCompDate,FCompNumDS-9Accident宿舍事故注冊信息AcNo,AcType,AcStu,AcDate,AcArtical,AcVerify,AcPrin,AcArNum,AcStuPhDS-10AccidentResearch宿舍事故調(diào)查信息ARNo,ARName,ARPrin,ARResultDS-1AccidentCompensate事故損失物品賠償信息ACStu,ACArtical,ACDate,ACPrinDS-2ArticalInOut宿舍樓物品出入信息AIOStu,AIOArtical,AIOPrin,AIODate,AIONo1.1.6處理邏輯描述〔判定表或判定樹〕表1-2處理邏輯列表判定條件決策判斷用戶查詢涉及的功能模塊宿舍根本信息模塊、宿舍樓根本信息模塊、學生根本信息模塊、宿舍樓配備物品根本信息模塊、宿舍事故根本信息模塊、宿舍樓物品出入根本信息模塊、宿舍樓保衛(wèi)處根本信息模塊、樓道工人根本信息模塊:先確定查詢所涉及的功能模塊;然后,確定要查詢的內(nèi)容,確定查詢數(shù)據(jù)流向;最后顯示查詢結果。判斷用戶修改要涉及的模塊,同時把相應的修改數(shù)據(jù)傳到相應的模塊之中宿舍根本信息模塊、宿舍樓根本信息模塊、學生根本信息模塊、宿舍樓配備物品根本信息模塊、宿舍事故根本信息模塊、宿舍樓物品出入根本信息模塊、宿舍樓保衛(wèi)處根本信息模塊、樓道工人根本信息模塊:先確定更新所涉及的功能模塊;然后,把更新信息傳送到相應的模塊中;最后,進行相應的更新操作。1.2概念設計階段概念設計階段主要是將需求分析階段得到的用戶需求抽象為信息結構(概念模型)的過程,它是整個數(shù)據(jù)庫設計的關鍵,包括概念模型設計和新系統(tǒng)流程兩個階段。1.2.1概念模型設計〔1〕根據(jù)不同的對象,從數(shù)據(jù)流程圖〔中層數(shù)據(jù)流程圖〕入手,分別畫出分E-R圖:從數(shù)據(jù)流程圖圖1.1抽象出的分E-R圖:圖1.3分E-R圖1圖1.3分E-R圖1〔2〕各分E-R圖中每個實體的屬性如下所示:學生:Student(StuNo,DepName,StuName,StuSex,StuHome,StuBorth,StuETime,StuPerfect,StuClass); 宿舍:Room(RNo,RHeader,ROne,RClass,RThree,RFour,RFive,RSix,RGrade,RDepart,RPerfect,RTwo); 宿舍樓:Dormitory(DorNo,DorCampus,DorLocation,DorPhNo,DorAdminist); 宿舍物品:Fitment(FitName,F(xiàn)itPrice,F(xiàn)itNum); 樓道工作人員:Worker(WorNo,WorName,WorType,WorWage,WorSex,WorPhNo,WorTime); 保衛(wèi)處:SafeGuard(SGName,SGWorNum,SGHeader,SGPhone); 各分E-R圖中聯(lián)系的屬性如下所示:物品出入:ArticalInOut(AIONo,AIOStu,AIOArtical,AIOPrin,AIODate);〔3〕合并各分E-R圖,消除屬性沖突、命名沖突、結構沖突等三類沖突,得到初步E-R圖,再消除不必要冗余,得到的根本E-R圖如下所示:圖1.4根本E-R圖圖1.4根本E-R圖1.3邏輯設計階段以上的概念設計階段是獨立于任何一種數(shù)據(jù)模型的,但是邏輯設計階段就與選用的DBMS產(chǎn)品發(fā)生關系了,系統(tǒng)邏輯設計的任務就是將概念設計階段設計好的根本E-R圖轉換為選用DBMS產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯結構。具體內(nèi)容包括數(shù)據(jù)組織〔將E-R圖轉換成關系模型、模型優(yōu)化、數(shù)據(jù)庫模式定義、用戶子模式設計〕、數(shù)據(jù)處理〔畫出系統(tǒng)功能模塊圖〕兩大任務.將E-R圖轉換為關系模型由于宿舍樓與樓道工人的聯(lián)系方式是1:n〔一對多〕,可以將其之間的聯(lián)系與n端實體樓道工人合并,宿舍樓與宿舍之間的聯(lián)系、宿舍與學生之間的聯(lián)系方式也是1:n,同樣也將其之間的聯(lián)系與n端實體宿舍、學生合并,而宿舍物品與學生、學生與樓道工作人員之間的聯(lián)系方式那么是n:m〔多對多〕,這樣要把它們之間的聯(lián)系轉化為獨立的關系模式,保衛(wèi)處與學生之間的聯(lián)系是1:n〔一對多〕,但是它們之間的聯(lián)系事故那么包含數(shù)據(jù)結構,為了便于模型優(yōu)化,將其聯(lián)系也轉化成獨立的關系模式,具體的根本E-R圖向關系模型的轉化如下:樓道工人:Worker〔WorNo,WorName,WorType,WorWage,WorSex,WorPhNo,WorTime,DorNo,DorCampus,DorLocation〕;宿舍樓:Dormitory〔DorNo,DorCampus,DorLocation,DorPhNo,DorAdminist〕;宿舍:Room〔RNo,RHeader,ROne,RClass,RThree,RFour,RFive,RSix,RGrade,RDepart,RPerfect,RTwo,DorNo,DorCampus,DorLocation〕;宿舍物品:Fitment〔FitName,F(xiàn)itPrice,F(xiàn)itNum,DorNo,DorCampus,DorLocation〕;學生:Student〔StuNo,DepName,StuName,StuSex,StuHome,StuBorth,StuETime,StuPerfect,StuClass,RNo,DorNo,DorCampus,DorLocation〕;保衛(wèi)處:SafeGuard(SGName,SGWorNum,SGHeader,SGPhone);物品出入:ArticalInOut(AIONo,StuNo,AIOArtical,AIOPrin,AIODate,DorNo,DorCampus,DorLocation);宿舍物品處理包含兩個數(shù)據(jù)結構〔宿舍物品損壞信息,宿舍物品損壞賠償信息〕,基于表的各個屬性都是原子項的考慮,現(xiàn)將宿舍物品處理分解為:宿舍物品損壞、宿舍損壞物品賠償,具體如下:宿舍物品損壞:FitmentDestruction〔FitName,StuNo,RNo,F(xiàn)DFitNum,DorNo,DorCampus,DorLocation〕;〔消除命名沖突〕宿舍物品損壞賠償:FitmentCompensate〔FitName,StuNo,F(xiàn)CPrin,F(xiàn)CompDate, FCompNum〕;〔消除命名沖突〕宿舍事故包含三個數(shù)據(jù)結構〔宿舍事故注冊信息、宿舍事故調(diào)查信息、宿舍事故損失物品賠償信息〕,同樣基于表的原子性的考慮也將事故分解為:事故注冊、事故調(diào)查、事故賠償,具體如下:事故注冊:Accident〔AcNo,AcType,StuNo,AcDate,AcArtical,AcVerify,SGName,AcArNum,AcStuPh〕;事故調(diào)查:AccidentResearch〔AcNo,ARName,SGName,ARResult〕;事故賠償:AccidentCompensate〔AcNo,ACStu,AcArtical,ACDate,SGName〕;〔注:標有直線下劃線的為主屬性,標有波浪線下劃線的是外鍵屬性,主屬性與外鍵屬性一起構成主碼〕模型優(yōu)化關系模式Worker,Dormitory,F(xiàn)itment,SafeGuard,ArticalInOut,F(xiàn)itmentDestruction,F(xiàn)itmentCompensate,Accident,AccidentResearch,AccidentCompensate不存在非主屬性對主屬性的局部函數(shù)依賴,也不存在傳遞函數(shù)依賴,已經(jīng)到達了3NF,但是宿舍關系模式〔Room〕中存在著一些不應該有的數(shù)據(jù)冗余,現(xiàn)將模型優(yōu)化為:Room〔RNo,RHeader,RGrade,RDepart,RPerfect,DorNo,DorCampus,DorLocation〕;雖然Room中還存在一些數(shù)據(jù)冗余,但可以提高查詢效率。數(shù)據(jù)庫模式定義1.樓道工人(Worker)根本信息表,用于記錄樓道工人的根本信息:表1-3樓道工人根本信息表屬性名數(shù)據(jù)類型取值范圍是否是主屬性或外鍵完整性WorNochar(5)00000~99999是NotnullWorNamechar(10)否NotnullWorTypechar(8)否NotnullWorWageInt大于500〔元/月〕否NotnullWorSexchar(2)男、女否NotnullWorPhNochar(2)否NullWorTimechar(30)否NullDorNosmallint00~99是NotnullDorCampuschar(4)四面八方其中之一是NotnullDorLocationchar(4)四面八方其中之一是Notnull2.宿舍樓(Dormitory)根本信息表,用于記錄宿舍樓的根本信息:表1-4宿舍樓根本信息表屬性名數(shù)據(jù)類型取值范圍是否是主屬性或外鍵完整性DorNosmallint00~99是NotnullDorCampuschar(4)四面八方其中之一是NotnullDorLocationchar(4)四面八方其中之一是NotnullDorPhNochar(2)否NullDorAdministchar(10)否Null3.宿舍(Room)根本信息表,用于記錄宿舍的根本信息:表1-5宿舍根本信息表屬性名數(shù)據(jù)類型取值范圍是否是主屬性或外鍵完整性RNochar(6)01-001~99-999是NotnullRHeaderchar(10)否NullRGradechar(4)否NotnullRDepartchar(20)否NotnullRPerfectchar(20)否NotnullDorNosmallint00~99是NotnullDorCampuschar(4)四面八方其中之一是NotnullDorLocationchar(4)四面八方其中之一是Notnull4.宿舍樓配備物品(Fitment)根本信息表,用于記錄宿舍樓配備物品的根本信息:表1-6宿舍配備物品根本信息屬性名數(shù)據(jù)類型取值范圍是否是主屬性或外鍵完整性FitNamechar(16)是NotnullFitPricefloat大于0否NotnullFitNumInt大于0否NotnullDorNosmallint00~99是NotnullDorCampuschar(4)四面八方其中之一是NotnullDorLocationchar(4)四面八方其中之一是Notnull5.宿舍學生(Student)根本信息表,用于記錄宿舍學生的根本信息:圖1-7宿舍學生根本信息屬性名數(shù)據(jù)類型取值范圍是否是主屬性或外鍵完整性StuNochar(9)00000000~999999999是NotnullDepNamechar(20)否NotnullStuNamechar(10)否NotnullStuSexchar(2)男、女否NotnullStuHomechar(10)否NotnullStuBorthdatetime否NotnullStuETimedatetime否NotnullStuPerfectchar(20)否NotnullStuClassint大于0小于10否NotnullRNochar(6)01-001~99-999是NotnullDorNosmallint00~99是NotnullDorCampuschar(4)四面八方其中之一是NotnullDorLocationchar(4)四面八方其中之一是Notnull6.宿舍保衛(wèi)處(SafeGuard)根本信息表,用于記錄保衛(wèi)處的根本信息:圖1-8宿舍保衛(wèi)處根本信息屬性名數(shù)據(jù)類型取值范圍是否是主屬性或外鍵完整性SGNamechar(15)是NotnullSGWorNumint大于0否NotnullSGHeaderchar(10)否NotnullSGPhonechar(2)否Null7.宿舍樓物品出入(ArticalInOut)根本信息表,用于記錄物品出入的根本信息:圖1-9宿舍樓物品出入根本信息屬性名數(shù)據(jù)類型取值范圍是否是主屬性或外鍵完整性StuNochar(9)00000000~999999999是NotnullAIOArticalchar(16)否NullAIOPrinchar(9)否NotnullAIODatedatetime是NotnullAIONoInt大于0是NotnullDorNosmallint00~99是NotnullDorCampuschar(4)四面八方其中之一是NotnullDorLocationchar(4)四面八方其中之一是Notnull8.宿舍配備物品損壞(FitmentDestruction)根本信息表,用于記錄物品損壞的根本信息:圖1-10宿舍配備物品損壞根本信息屬性名數(shù)據(jù)類型取值范圍是否是主屬性或外鍵完整性FitNamechar(16)是NotnullStuNochar(9)00000000~999999999是NotnullRNochar(6)01-001~99-999是NotnullFDFitNumInt大于等于0否NotnullDorNosmallint00~99是NotnullDorCampuschar(4)四面八方其中之一是NotnullDorLocationchar(4)四面八方其中之一是Notnull9.宿舍配備物品損壞賠償(FitmentCompensate)根本信息表,記錄損壞物品賠償?shù)母拘畔ⅲ罕?-1宿舍配備物品損壞賠償根本信息屬性名數(shù)據(jù)類型取值范圍是否是主屬性或外鍵完整性FitNamechar(16)是NotnullStuNochar(9)00000000~999999999是NotnullFCPrinchar(10)是NotnullFCompDatedatetime否NotnullFCompNumint大于等于0否Notnull10.宿舍事故注冊(Accident)根本信息表,用于記錄宿舍事故注冊的根本信息:表3-2宿舍事故注冊根本信息屬性名數(shù)據(jù)類型取值范圍是否是主屬性或外鍵完整性AcNoint0000~9999是NotnullAcTypechar(10)否NotnullStuNochar(30)00000000~999999999是NotnullAcDatedatetime是NotnullAcArticalchar(30)否NotnullAcVerifybool否NullSGNamechar(15)是NullAcArNumint大于等于0否NotnullAcStuPhchar(2)否Null1.宿舍事故調(diào)查(AccidentResearch)根本信息表,用于記錄宿舍事故調(diào)查的根本信息:表1-3事故調(diào)查根本信息屬性名數(shù)據(jù)類型取值范圍是否是主屬性或外鍵完整性AcNoint0000~9999是NotnullARNamechar(15)是NotnullSGNamechar(15)是NotnullARResultbool否Notnull2.宿舍事故賠償(AccidentCompensate)根本信息表,用于記錄宿舍事故賠償?shù)母拘畔ⅲ罕?-14宿舍事故賠償根本信息屬性名數(shù)據(jù)類型取值范圍是否是主屬性或外鍵完整性AcNoint0000~9999是NotnullACStuchar(10)00000000~999999999是NotnullAcArticalchar(30)否NotnullACDatedatetime否NotnullSGNamechar(15)是Notnull1.3.4用戶子模式設計表1-15用戶子模式設計(View)列表編號用戶子模式(View)作用(共性:提供數(shù)據(jù)保密和平安保護機制)V-1WorView便于查詢和修改樓道工人的根本信息V-2DormView方便宿舍樓的根本信息的查詢、更新V-3RoomView以便于宿舍的根本信息的查詢和更新V-4FitView用于宿舍樓配備物品的根本信息的查詢V-5StuView便于查詢和更改學生的根本信息V-6SGView方便學生查詢宿舍保衛(wèi)處的根本信息V-7ArIOView以便于物品出入的管理和信息的查詢、更改V-8FDView便于宿舍物品損壞的的登記及處理和信息的查詢V-9FCView查詢損壞物品賠償?shù)母拘畔ⅲ阌谒奚嵛锲返墓芾鞻-10AccView方便學生事故的注冊及保衛(wèi)人員對事故注冊的查詢V-1ARView便于學生查詢宿舍事故調(diào)查的根本信息V-2ACView方便宿舍事故賠償?shù)男畔⒉樵兒透聢D1.5系統(tǒng)功能模塊圖1.3.5系統(tǒng)功能模塊圖圖1.5系統(tǒng)功能模塊圖1.4物理設計階段數(shù)據(jù)庫的物理設計就是為邏輯數(shù)據(jù)模型選取一個最適宜應用要求的物理結構的過程,在這個階段中要完成兩大任務:〔1〕確定數(shù)據(jù)庫的物理結構,在關系數(shù)據(jù)庫中主要是存取方法和存儲結構;〔2〕對物理結構進行評價,評價的重點是時間和空間效率。1.4.1數(shù)據(jù)存儲 為數(shù)據(jù)庫中各根本表建立的索引如下:由于根本表Room,Student的主碼RNo,StuNo經(jīng)常在查詢條件和連接操作的連接條件中出現(xiàn),且它們的值唯一,考慮在兩個屬性上建立唯一性索引;Dormitory的主碼DorNo,DorCampus,DorLocation經(jīng)常在查詢條件中出現(xiàn),且它們的組合值唯一,考慮在它們之上建立組合索引;根本表Student的一屬性StuName,經(jīng)常在查詢條件中出現(xiàn),且經(jīng)常出現(xiàn)在相等的比擬條件中,考慮在其之上建立聚簇索引;根本表Fitment、SafeGuard的屬性值幾乎不會有什么變化,更新率很低,可考慮適當建立索引;根本表Worker,ArticalInOut,F(xiàn)itmentDestruction,F(xiàn)itmentCompensate,Accident,AccidentResearch,AccidentCompensate的屬性值經(jīng)常發(fā)生變化,權衡系統(tǒng)為維護索引付出的代價,可考慮不建立索引,也可以適當建立索引。1.5數(shù)據(jù)庫實施階段1.5.1建立數(shù)據(jù)庫和數(shù)據(jù)表createdatabaseStudent_Dormitory_Management;〔1〕樓道工人根本信息表的建立:createtableWorker〔WorNochar(5〕notnullunique,WorNamechar(10)notnull,WorTypechar(8)notnull,WorWageintnotnull,WorSexchar(2)notnull,WorPhNochar(2)null,WorTimechar(30) null,DorNosmallint notnull,DorCampuschar(4)notnull,DorLocationchar(4)notnull,primarykey(WorNo),foreignkey(DorNo,DorCampus,DorLocation)references Dormitory(DorNo,DorCampus,DorLocation),check(WorWage>=0),check(WorSex=‘男’orWorSex=‘女’));〔2〕宿舍樓根本信息表的建立〔3〕宿舍根本信息表的建立〔4〕宿舍樓配備物品根本信息表的建立createtableFitment(FitNamechar(16) notnullunique,FitPricefloat notnull,FitNumint notnull,DorNosmallint notnull,DorCampuschar(4) notnull,DorLocationchar(4) notnull,primarykey(FitName),foreignkey(DorNo,DorCampus,DorLocation)references Dormitory(DorNo,DorCampus,DorLocation));舍學生根本信息表的建立〔省略〕〔6〕宿舍保衛(wèi)處根本信息表的建立〔省略〕〔7〕宿舍樓物品出入根本信息表的建立createtableArticalInOut( StuNochar(9) notnull, AIOArticalchar(16) null, AIOPrinchar(9) notnull,AIODatedatetime notnull,AIONoint notnullunique,DorNosmallint notnull,DorCampuschar(4) notnull,DorLocationchar(4) notnull,primarykey(AIONo,AIODate),foreignkey(StuNo)referencesStudent(StuNo),foreignkey(AIOPrin)referencesWorker(WorNo),foreignkey(DorNo,DorCampus,DorLocation)references Dormitory(DorNo,DorCampus,DorLocation),check(AIONo>0));〔8〕宿舍配備物品損壞根本信息表的建立createtableFitmentDestruction( FitNamechar(16) notnullunique, StuNochar(9) notnull, RNochar(6) notnull, FDFitNumint notnull, DorNosmallint notnull,DorCampuschar(4) notnull,DorLocationchar(4) notnull,foreignkey(DorNo,DorCampus,DorLocation)references Dormitory(DorNo,DorCampus,DorLocation), foreignkey(FitName)referencesFitment(FitName), foreignkey(StuNo)referencesStudent(StuNo), foreignkey(RNo)referencesRoom(RNo), check(FDFitNum>=0));〔9〕宿舍損壞配備物品賠償根本信息表的建立〔省略〕。〔10〕宿舍事故注冊根本信息表的建立createtableAccident( AcNoint notnullunique, AcTypechar(10) notnull, StuNochar(9) notnull, AcDatedatetime notnull, AcArticalchar(30) notnull, AcVerifybool null, SGNamechar(15) notnull, AcArNumint notnull, AcStuPhchar(2) notnull, primarykey(AcNo,AcDate), foreignkey(StuNo)referencesStudent(StuNo), foreignkey(SGName)referencesSafeGuard(SGName), check(AcArNum>0),);1.5.2建立視圖 〔1〕用于查詢和更新樓道工人根本信息的視圖定義如下:createviewWorView(編號,姓名,工作類型,工資,性別,聯(lián)系方式, 工作時間,宿舍樓編號,校區(qū),區(qū)位) as select* fromWorker withcheckoption; 〔2〕宿舍樓根本信息查詢、更新的視圖定義〔省略〕〔3〕顯示宿舍根本信息的視圖定義(省略) 〔4〕可用于宿舍樓配備物品根本信息查詢、更新的視圖〔省略〕 〔5〕用于查詢和更新學生根本信息的視圖定義如下:createviewStuView(學號,學院,姓名,性別,祖籍,出生日期,入學時間,專業(yè),班級,宿舍編號,宿舍樓編號,校區(qū),區(qū)位) as select* fromStudent withcheckoption; 〔6〕顯示宿舍保衛(wèi)處根本信息的視圖〔省略〕 〔7〕以便于物品出入管理和出入物品信息查詢、更新的視圖定義如下:1.5.3建立索引及數(shù)據(jù)入庫1.建立學號、房間號、宿舍號、學生名字、配備物品名字及門衛(wèi)名字的索引。createuniqueindexStudentNoonStudent(StuNo); createuniqueindexRoomNoonRoom(RNo); createuniqueindexDormitoryNo_Campus_LocationonDormitory(DorNodesc,DorCampus,DorLocation); createclusterindexStudentNameonStudent(StuName); createuniqueindexFitmentNameonFitment(FitName); createuniqueindexSafeGuardNameonSafeGuard(SGName);2.數(shù)據(jù)入庫 系統(tǒng)包括宿舍學生根本信息管理、樓道工人根本信息管理、宿舍樓根本信息管理、宿舍根本信息管理、宿舍事故根本信息管理、宿舍樓物品出入根本信息管理、宿舍樓保衛(wèi)處根本信息管理、宿舍配備物品及處理管理等八大功能模塊,共有2張根本表,牽涉到大量數(shù)據(jù)的錄入,采用事先在Excel中錄入數(shù)據(jù),然后使用SQLSERVER2000數(shù)據(jù)導入/導出向導功能,直接將數(shù)據(jù)導入到相應的根本表中。1.5.4創(chuàng)立各個功能的存儲過程 系統(tǒng)共創(chuàng)立了15個存儲過程,具體如下:1.在Room中插入一元組1.p1_Worker_Insert的定義:CREATEPROCEDUREp1_Worker_Insert @worker_nochar(5),@worker_namechar(10), @work_typechar(8), @work_wageint, @worker_sexchar(2),@work_timechar(30), @dormitory_nosmallint,@dormitory_campuschar(4), @dormitory_locationchar(4)as insertintoWorker values(@worker_no,@worker_name,@work_type,@work_wage,@worker_sex,@work_time,@work_time, @dormitory_no,@dormitory_campus,@dormitory_location);2.在Dormitory中插入一元組〔省略〕3.在Room中插入一元組〔省略〕4.在Fitment中插入一元組p4_Fitment_Inser的定義:createprocedurep4_Fitment_Insert@fitment_namechar(16),@fitment_pricefloat,@fitment_numberint,@dormitory_nosmallint,@dormitory_campuschar(4),@dormitory_locationchar(4)asinserttoFitmentvalues(@fitment_name,@fitment_price,@fitment_number,@dormitory_no, @dormitory_campus,@dormitory_location);5.在Student中插入一元組p5_Student_Insert的定義:createprocedurep5_Student_Insert @student_nochar(9), @department_namechar(20),@student_namechar(10), @student_sexchar(2), @student_homechar(10), @student_borthdatetime, @student_enter_timedatetime, @student_perfectionchar(20), @student_classint, @room_nochar(6), @dormitory_nosmallint, @dormitory_campuschar(4),@dormitory_locationchar(4) as insertintoStudentvalues(@student_no,@department_name,@student_name,@student_sex ,@student_home,@student_borth,@student_enter_time,@student_perfection, @student_class,@room_no,@dormitory_no,@dormitory_campus, @dormitory_location);6在SafeGuard中插入一元組.p6_SafeGuard_Insert的定義:createprocedurep6_SafeGuard_Insert @safeguard_namechar(15), @safeguard_worker_numint, @safeguard_headerchar(10), @safeguard_phonechar(2) as insertintoSGName values(@safeguard_name,@safeguard_worker_num,@safeguard_header, @safeguard_phone);7.在ArticalInOut中插入一元組p7_Artical_In_Out_Insert的定義:createprocedurep7_Artical_In_Out_InSert@student_nochar(9), @aio_articalchar(16), @aio_principalchar(9), @aio_datedatetime, @aio_noint, @dormitory_nosmallint, @dormitory_campuschar(4),@dormitory_locationchar(4) as insertintoAIOArtical values(@student_no,@aio_artical,@aio_principal,@aio_date, @dormitory_no,@dormitory_campus,@dormitory_location);8.在FitmentDestruction中插入一元組p8_FitmentDestruction_Insert:的定義createprocedurep8_FitmentDestruction_Insert @fitment_namechar(16), @student_nochar(9),@room_nochar(6), @fdf_numint,@dormitory_nosmallint,@dormitory_campuschar(4), @dormitory_locationchar(4)as inserttoFitmentDestruction values(@fitment_name,@student_no,@room_no,@fdf_num,@dormitory_no, @dormitory_campus,@dormitory_location);9.在FitmentCompensate中插入一元組〔省略〕10.在Accident中插入一元組〔省略〕1在AccidentResearch中插入一元組〔省略〕2.在AccidentCompensate中插入一元組〔省略〕3在Worker中匹配(WorNo)查詢〔省略〕14在Worker中匹配(WorName)查詢.p14_Query_Worker的定義:createprocedurep14_Query_Worker @worker_namechar(10) as select*fromWorView where姓名likeltrim(@worker_name)+’%’;15.在Worker中刪除元組p15_Delete_Worker的定義:createprocedurep15_Delete_Worker @worker_nochar(5) as delete fromWor

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論