第二章數(shù)據庫設計_第1頁
第二章數(shù)據庫設計_第2頁
第二章數(shù)據庫設計_第3頁
第二章數(shù)據庫設計_第4頁
第二章數(shù)據庫設計_第5頁
已閱讀5頁,還剩24頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第二章數(shù)據庫的設計本章目標了解設計數(shù)據庫的步驟掌握如何繪制數(shù)據庫的E-R圖理解數(shù)據庫的規(guī)范化-三大范式為什么需要設計數(shù)據庫良好的數(shù)據庫設計:節(jié)省數(shù)據的存儲空間能夠保證數(shù)據的完整性方便進行數(shù)據庫應用系統(tǒng)的開發(fā)糟糕的數(shù)據庫設計:數(shù)據冗余、存儲空間浪費內存空間浪費數(shù)據更新和插入的異常軟件項目開發(fā)周期需求分析階段:分析客戶的業(yè)務和數(shù)據處理需求;概要設計階段:設計數(shù)據庫的E-R模型圖,確認需求信息的正確和完整;詳細設計階段:將E-R圖轉換為多張表,進行邏輯設計,并應用數(shù)據庫設計的三大范式進行審核;代碼編寫階段:選擇具體數(shù)據庫進行物理實現(xiàn),并編寫代碼實現(xiàn)前端應用;軟件測試階段:……安裝部署:……現(xiàn)實世界建模信息世界數(shù)據庫世界模型轉換規(guī)范化設計數(shù)據庫的步驟4-1收集信息:

與該系統(tǒng)有關人員進行交流、坐談,充分理解數(shù)據庫需要完成的任務BBS論壇的基本功能:用戶注冊和登錄,后臺數(shù)據庫需要存放用戶的注冊信息和在線狀態(tài)信息;用戶發(fā)貼,后臺數(shù)據庫需要存放貼子相關信息,如貼子內容、標題等;論壇版塊管理:后臺數(shù)據庫需要存放各個版塊信息,如版主、版塊名稱、貼子數(shù)等;設計數(shù)據庫的步驟4-2標識對象(實體-Entity)

標識數(shù)據庫要管理的關鍵對象或實體

實體一般是名詞:用戶:論壇普通用戶、各版塊的版主。用戶發(fā)的主貼用戶發(fā)的跟貼(回貼)版塊:論壇的各個版塊信息設計數(shù)據庫的步驟4-3論壇用戶:昵稱密碼電子郵件生日性別用戶的等級備注信息注冊日期狀態(tài)積分主貼發(fā)貼人發(fā)貼表情回復數(shù)量標題正文發(fā)貼時間點擊數(shù)狀態(tài)最后回復時間回貼貼子編號回貼人回貼表情標題正文回貼時間點擊數(shù)版塊版塊名稱版主本版格言點擊率發(fā)貼數(shù)標識每個實體的屬性(Attribute)設計數(shù)據庫的步驟4-4標識對象之間的關系(Relationship)跟貼和主貼有主從關系:我們需要在跟貼對象中表明它是誰的跟貼;版塊和用戶有關系:從用戶對象中可以根據版塊對象查出對應的版主用戶的情況;主貼和版塊有主從關系:需要表明發(fā)貼是屬于哪個版塊的;跟貼和版塊有主從關系:需要表明跟貼是屬于哪個版塊的;繪制E-R圖4-1E-R(Entity-Relationship)實體關系圖符號含義實體,一般是名詞屬性,一般是名詞關系,一般是動詞繪制E-R圖4-2管理bbsUser(用戶,版主)……出生日期昵稱版塊名稱版主……bbsSection(版塊)1111M1MMMM用戶積分性別用戶等級備注信息注冊日期版塊名稱本版留言發(fā)貼數(shù)狀態(tài)密碼昵稱電子郵件生日論壇用戶(BBSUser)管理發(fā)表發(fā)表跟隨屬于屬于點擊率版主標題發(fā)貼人貼子編號正文點擊率版塊(BBSSection)發(fā)貼(BBSTopic)發(fā)貼人正文狀態(tài)貼子編號所在版塊最后回復時間發(fā)貼表情回復數(shù)量點擊率發(fā)貼時間標題M跟貼(BBSReply)所在版塊發(fā)貼時間最后回復時間發(fā)貼表情1繪制E-R圖論壇E-R圖

如何將E-R圖轉換為表3-1將各實體轉換為對應的表,將各屬性轉換為各表對應的列標識每個表的主鍵列,需要注意的是:沒有主鍵的表添加ID編號列,它沒有實際含義,用于做主鍵或外鍵,例如用戶表中的“UID”列,版塊表中添加“SID”列,發(fā)貼表和跟貼表中的“TID”列在表之間建立主外鍵,體現(xiàn)實體之間的映射關系

如何將E-R圖轉換為表3-2UID主鍵TID主鍵RID主鍵SID主鍵如何將E-R圖轉換為表添加各表之間的關系數(shù)據規(guī)范化僅有好的RDBMS并不足以避免數(shù)據冗余,必須在數(shù)據庫的設計中創(chuàng)建好的表結構DrE.F.Codd最初定義了規(guī)范化的三個級別,范式是具有最小冗余的表結構。這些范式是:第一范式(1stNF-FirstNormalFromate)第二范式(2ndNF-SecondNormalFromate)第三范式(3rdNF-ThirdNormalFromate)第一墻范式(1經st鳳N概F)BuyerIDCountryCity1142中國中國日本美國北京北京東京紐約………BuyerIDAddress1234中國北京市

美國紐約市英國利物浦日本東京市……第一泛范式省的目巖標是柜確保思每列謀的原族子性如果陪每列針都是沫不可社再分性的最儉小數(shù)艱據單州元(哀也稱互為最土小的雀原子報單元庫),淡則滿搖足第彼一范梢式(1N振F)第二議范式(2匪nd名N鋸F)如果參一個折關系拒滿足1N艦F,并描且除朝了主杜鍵以精外的仍其他宣列,效都依碼賴與圾該主麥鍵,雷則滿規(guī)足第橡二范伸式(2N炎F)第二悼范式噴要求座每個好表只茶描述些一件述事情Orders字段例子訂單編號產品編號訂購日期價格001A0012000-2-3$29.00……Orders字段例子訂單編號訂購日期0012000-2-3Products字段例子產品編號價格A001$29.00第三幻玉范式(3揪rd察N懲F)如果形一個省關系駛滿足2N懇F,并云且除便了主窯鍵以部外的各其他磚列都嫁不傳登遞依擋賴于俊主鍵倆列,而則滿落足第震三范濫式(3N象F)Or烘de辜rs字旬段例剝子訂單心編號訂購槐日期顧客險編號00錘120侵00替-2冤-3AB拴00懷1顧客姓名Tony……Orders字段例子訂單編號訂購日期顧客編號0012000-2-3AB001……規(guī)范犬化實澇例5-近1假設寒某建鈔筑公甩司要均設計勉一個池數(shù)據罰庫。沖公司勸的業(yè)乓務規(guī)則概旺括說遣明如拍下:公司粘承擔鵲多個降工程紀項目婆,每崖一項亞工程肢有:胸工程容號、乒工程少名稱吩、施哀工人惠員等公司馬有多芬名職秋工,黃每一墨名職容工有稅:職究工號仆、姓張名、貍性別撕、職新務(香工程襲師、喘技術津員)哲等公司撒按照福工時棋和小聾時工具資率遲支付嚷工資慌,小競時工描資率憂由職扇工的物職務飄決定鳥(例葵如,衣技術奸員的帖小時禾工資悟率與占工程泳師不功同)公司笨定期罵制定松一個凍工資梁報表眾,如遠圖-1所示規(guī)范戰(zhàn)化實熟例5-獲2工程號工程名稱職工號姓名職務小時工資率工時實發(fā)工資A1花園大廈1001齊光明工程師6513845.001002李思岐技術員6016960.001004葛宇洪技術員60191140.00小計2945.00A2立交橋1001齊光明工程師6515975.001003鞠明亮工人5517935.00小計1910.00A3臨江飯店1002李思岐技術員60181080.001004葛宇洪技術員6014840.00小計1920.00圖-1某公忌司的輩工資認表規(guī)范佛化實借例5-完3工程號工程名稱職工號姓名職務小時工資率工時A1花園大廈1001齊光明工程師6513A1花園大廈1002李思岐技術員6016A1花園大廈1004葛宇洪技術員6019A2立交橋1001齊光明工程師6515A2立交橋1003鞠明亮工人5517A3臨江飯店1002李思岐技術員6018A3臨江飯店1004葛宇洪技術員6014圖-2某公液司的棍項目漆工時香表規(guī)范艦化實蜜例5-粱41.表中篩包含冷大量都的冗轟余,泳可能執(zhí)會導時致數(shù)染據異短常:更新雀異常例如認,修葵改職陶工號=1督00落1的職興務,山則必龍須修惱改所墊有職舍工號=1波00望1的行添加勿異常若要巷增加莫一個鵝新的算職工房誠時,殘首先撓必須顫給這賺名職愿工分逮配一夠個工陡程。花或者餡為了連添加端一名海新職灘工的羨數(shù)據蚊,先刷給這定名職訴工分狀配一懸個虛奸擬的扭工程派。(落因為密主關車鍵字念不能告為空堤)刪除譯異常例如譽,10貌01號職雕工要集辭職餅,則器必須援刪除摔所有繡職工租號=10除01的數(shù)塌據行項。這宰樣的溫刪除描操作抹,很挎可能腦丟失斧了其竟它有響用的形數(shù)據規(guī)范作化實隨例5-像52.采盤用這榆種方橡法設亡計表眉的結造構,毯雖然銹很容哥易產鑄生工派資報下表,猜但是估每當樓一名義職工凍分配旬一個津工程條時,瘦都要光重復合輸入煎大量鞋的數(shù)頸據。毛這種刑重復鳳的輸紀入操北作,茂很可關能導鹽致數(shù)巨據的獅不一獄致性夏。一張未表描垮述了撈多件腫事情巷,如筐圖-3所示儀。應用惹范式宮規(guī)范公化設休計工程號工程名稱職工號姓名職務小時工資率工時圖-3函數(shù)券依賴悟圖工程續(xù)信息員工市信息項目號工時遍信息應用坑第二壤范式拘規(guī)范慣化工程號工程名稱職工號姓名職務小時工資率工程號職工號工時圖-4應用茶第二氧范式工程薪表員工寒表項目瞧工時碑表滿足這第三慰范式趣嗎?應用伏第三宜范式輝規(guī)范痕化工程號工程名稱職工號姓名職務職務小時工資率工程號職工號工時工程齊表員工盯表職務途表工時蹈表規(guī)范拆化和呈性能旱的關塔系為滿軌足某住種商導業(yè)目炕標,宗數(shù)據屈庫性蓮能比雙規(guī)范侍化數(shù)癥據庫乒更重切要通過援在給塊定的揚表中憤添加乳額外群的字堡段,宵以大眼量減確少需魯要從烈中搜眨索信蹄息所岔需的械時間通過義在給演定的壟表中遇插入危計算革列(破如成竹績總婆分)狡,以微方便腔查詢進行榴規(guī)范歷化的匹同時燙,還割需要何綜合止考慮體數(shù)據屬庫的昏性能。小結2-豈1在需掀求分脫析階室段,賤設計贏數(shù)據叮庫的恢一般從步驟吉為:收集味信息標識踢對象標識閣每個顯對象厚的屬嗚性標識細對象魄之間題的關結系在概清要設到計階傅段和端詳細者設計究階段恰,設蔑計數(shù)竟據庫頑的步孔驟為各:繪制E-民R圖將E-惜R圖轉辟換為請表格應用姜三大旦范式田規(guī)范易化表留格小結2-柜2為了剝

溫馨提示

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

評論

0/150

提交評論