




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
培訓講師:XXXXXX2020年6月數據庫設計培訓數據庫設計概述1數據庫設計2數據庫設計規范3目錄數據庫設計概述為什么需要設計數據庫?良好的數據庫設計:節省數據的存儲空間能夠保證數據的完整性方便進行數據庫應用系統的開發糟糕的數據庫設計:數據冗余、存儲空間浪費內存空間浪費數據更新和插入的異常數據庫設計概述什么是數據庫設計數據庫設計是指對于一個給定的應用環境,構造(設計)優化的數據庫邏輯模式和物理結構,并據此建立數據庫及其應用系統,使之能夠有效地存儲和管理數據,滿足各種用戶的應用需求,包括信息管理要求和數據操作要求。目標:為用戶和各種應用系統提供一個信息基礎設施和高效率的運行環境數據庫設計概述數據庫設計專業人員應具備哪些知識?數據庫的基本知識和數據庫設計技術計算機科學的基礎知識和程序設計的方法和技巧軟件工程的原理和方法應用領域的知識數據庫設計概述數據庫設計方法規范設計法手工設計方法基本思想:過程迭代和逐步求精典型方法新奧爾良(NewOrleans)方法將數據庫設計分為四個階段基于E-R模型的數據庫設計方法概念設計階段廣泛采用3NF(第三范式)的設計方法邏輯階段可采用的有效方法ODL(ObjectDefinitionLanguage)方法面向對象的數據庫設計方法計算機輔助設計ORACLEDesigner2000SYBASEPowerDesigner數據庫設計概述良好設計的目標數據庫支持設定的和實時的信息提取。數據庫必須存儲必要的信息,支持在設計時確定的信息需求,并支持用戶可能提出的實時查詢。表應當正確、有效地構造。數據庫中的每個表都代表一個主題,由一些相關的字段組成,數據的冗余度盡可能小,并且在整個數據庫中通過一個具有唯一值的字段表示。數據的完整性強加在字段、表和關系級。這些完整性幫助確保數據結構和它們的值始終是有效的和正確的。數據庫支持與組織機構有關的業務規則。數據必須提供合法和正確的信息,這些信息對于企業總是有意義的。數據庫支持未來的增長。隨著企業的信息需求的變化和增長,數據庫的結構應當易于修改和擴充。數據庫設計概述開發周期現實世界建模信息世界數據庫世界模型轉換規范化需求分析階段:分析客戶的業務和數據處理需求;概要設計階段:設計數據庫的E-R模型圖,確認需求信息的正確和完整;詳細設計階段:將E-R圖轉換為多張表,進行邏輯設計,并應用數據庫設計的三大范式進行審核;代碼編寫階段:選擇具體數據庫進行物理實現;軟件測試階段:……安裝部署:……數據庫設計概述基本步驟數據庫設計分6個階段需求分析概念結構設計邏輯結構設計物理結構設計數據庫實施數據庫運行和維護
數據庫設計概述1數據庫設計2數據庫設計規范3目錄數據庫設計術語及定義實體(Entity):客觀存在并可相互區別的事物稱為實體,實體可以是具體的人、事、物,也可以是抽象的概念或聯系。屬性(Attribute):實體所具有的某一特性稱為屬性。一個實體可以由若干個屬性來刻畫。主鍵:通常在實體中將一個屬性或多個屬性的數據設置成具有各不相同的值,以便能惟一地標識實體中的每一條記錄。這樣的一個屬性或多個屬性稱為表的主鍵,通過它可強制實現實體的完整性,消除實體的冗余數據。主鍵具有如下特性:不重復性、非空性、惟一性。外鍵:外鍵是最能體現關系型數據庫引用完整性特點的約束。將一個實體的一個屬性(或多個屬性)定義為引用其他實體的主鍵或惟一約束屬性,則引用實體中的這個屬性(或多個屬性)就稱為外鍵。被引用的實體稱為主鍵約束(或惟一約束)實體;引用實體稱為外鍵約束實體。
數據庫設計術語及定義概念模型:概念模型用于信息世界的建模,是現實世界到信息世界的第一層抽象,是數據庫設計人員進行數據庫設計的有力工具,也是數據庫設計人員和用戶之間進行交流的語言。它可以真實、充分地反映現實世界,包括事物與事物之間的聯系,能滿足用戶對數據的處理要求,是對現實世界的一個真實模型。概念模型設計是整個數據庫設計的關鍵,它通過對用戶需求進行綜合、歸納與抽象,形成一個獨立于具體DBMS的概念模型。邏輯模型:邏輯模型設計的任務就是把概念模型設計階段設計好的基本E-R圖經過優化、聚類轉換為與選用DBMS產品所支持的數據模型相符合的邏輯結構。E-R模型關系模型概念結構設計數據抽象與局部視圖數據抽象抽象是對實際的人、物、事和概念中抽取所關心的共同特性,忽略非本質的細節,并把這些特性用各種概念精確地加以描述。概念結構是對現實世界的一種抽象。三類抽象分類聚集概括概念結構設計數據抽象與局部視圖分類將一類具有共同特性和行為的對象定義為一種某類型,在E-R模型中的實體型就是這種抽象,如學生,課程抽象了對象的值和型之間“ismemberof”語義學生“ismemberof”張英王平趙斌實體型課程“ismemberof”C語言數據庫操作系統實體型概念結構設計數據抽象與局部視圖聚集定義某類型的組成成分,對應E-R模型中實體的屬性抽象了對象類型和其成分之間的“ispartof”語義學生學號姓名專業班級“ispartof”實體型屬性概念結構設計數據抽象與局部視圖概括定義類型之間的子集聯系,形成超(父)類、子類抽象了類型之間“issubsetof”語義概括的重要性質:繼承,即子類集成超類的所有抽象是E-R模型的抽象機制的擴充學生本科生研究生概括的E-R表示“issubsetof”超類子類學號,姓名,性別,年齡專業,綜合排名導師,研究方向概念結構設計E-R圖例邏輯結構設計邏輯結構設計的任務把概念結構設計階段設計好的基本E-R圖轉換為與選用DBMS產品所支持的數據模型相符合的邏輯結構邏輯結構設計的步驟將概念結構轉化為一般的關系、網狀、層次模型將轉換來的關系、網狀、層次模型向特定DBMS支持下的數據模型轉換對數據模型進行優化邏輯結構設計邏輯結構設計一對一關系轉換實體對應關系模式分別為:班級(班號,專業,人數)班長(學號,姓名,專長)聯系管理(班號,學號)關系模式“管理”的主鍵也可以選擇學號建立獨立的關系模式邏輯結構設計一對多關系轉換實體對應的關系模式系(系號,系名,系主任,電話)教師(教師號,姓名,專業,職稱,性別,年齡)聯系對應的關系模式管理(教師號,系號)建立獨立的關系模式邏輯結構設計多對多關系轉換課程(課程號,課程名,學時,類別)學生(學號,姓名,性別,專業,出生日期,照片)選修(學號,課程號,分數)邏輯結構設計數據規范化僅有好的RDBMS并不足以避免數據冗余,必須在數據庫的設計中創建好的表結構DrE.F.codd最初定義了規范化的三個級別,范式是具有最小冗余的表結構。這些范式是:第一范式(1stNF-FirstNormalFromate)第二范式(2ndNF-SecondNormalFromate)第三范式(3rdNF-ThirdNormalFromate)邏輯結構設計第一范式BuyerIDCountryCity1142中國中國日本美國北京北京東京紐約………BuyerIDAddress1234中國北京市美國紐約市英國利物浦日本東京市……第一范式的目標是確保每列的原子性如果每列都是不可再分的最小數據單元(也稱為最小的原子單元),則滿足第一范式(1NF)邏輯結構設計第二范式Orders字段例子訂單編號產品編號訂購日期價格001A0012000-2-3$29.00……Orders字段例子訂單編號訂購日期0012000-2-3Products字段例子產品編號價格A001$29.00如果一個關系滿足1NF,并且除了主鍵以外的其他列,都依賴與該主鍵,則滿足第二范式(2NF)第二范式要求每個表只描述一件事情邏輯結構設計第三范式Orders字段例子訂單編號訂購日期顧客編號0012000-2-3AB001顧客姓名Tony……Orders字段例子訂單編號訂購日期顧客編號0012000-2-3AB001……如果一個關系滿足2NF,并且除了主鍵以外的其他列都不傳遞依賴于主鍵列,則滿足第三范式(3NF)邏輯結構設計規范化實例工程號工程名稱職工號姓名職務小時工資率工時實發工資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某公司的工資表邏輯結構設計規范化實例工程號工程名稱職工號姓名職務小時工資率工時A1花園大廈1001齊光明工程師6513A1花園大廈1002李思岐技術員6016A1花園大廈1001齊光明工程師6513A1花園大廈1003鞠明亮工人5517A3臨江飯店1002李思岐技術員6018A3臨江飯店1004葛宇洪技術員6014圖2某公司的項目工時表邏輯結構設計規范化實例1.表中包含大量的冗余,可能會導致數據異常:更新異常例如,修改職工號=1001的職務,則必須修改所有職工號=1001的行添加異常若要增加一個新的職工時,首先必須給這名職工分配一個工程。或者為了添加一名新職工的數據,先給這名職工分配一個虛擬的工程。(因為主關鍵字不能為空)刪除異常例如,1001號職工要辭職,則必須刪除所有職工號=1001的數據行。這樣的刪除操作,很可能丟失了其它有用的數據邏輯結構設計應用第一范式一張表描述了多件事情,如圖3所示。工程號工程名稱職工號姓名職務小時工資率工時圖3函數依賴圖工程信息員工信息項目工時信息邏輯結構設計應用第2范式工程號工程名稱職工號姓名職務小時工資率工程號職工號工時圖4
應用第二范式工程表員工表項目工時表滿足第三范式嗎?
邏輯結構設計應用第三范式工程號工程名稱職工號姓名職務職務小時工資率工程號職工號工時工程表員工表職務表工程表邏輯結構設計規范化和性能的關系為滿足某種商業目標,數據庫性能比規范化數據庫更重要通過在給定的表中添加額外的字段,以大量減少需要從中搜索信息所需的時間通過在給定的表中插入計算列(如成績總分),以方便查詢進行規范化的同時,還需要綜合考慮數據庫的性能。邏輯結構設計規范化和性能的關系例:在關系模式學生成績單(學號,英語,數學,語文,平均成績)
中存在下列函數依賴:學號→英語學號→數學學號→語文學號→平均成績
(英語,數學,語文)→平均成績顯然有:學號→(英語,數學,語文)
因此該關系模式中存在傳遞函數信賴,是2NF關系。雖然平均成績可以由其他屬性推算出來,但如果應用中需要經常查詢學生的平均成績,為提高效率,我們仍然可保留該冗余數據,對關系模式不再做進一步分解。物理結構設計數據庫在物理設備上的存儲結
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣西梧州市本年度(2025)小學一年級數學部編版隨堂測試(上學期)試卷及答案
- 廣西貴港市本年度(2025)小學一年級數學統編版期中考試(下學期)試卷及答案
- VR技術應用模擬習題含答案
- 基礎營養模考試題(含參考答案)
- 山西省部分學校2024-2025學年高二下學期期中測評考試歷史試題(原卷版+解析版)
- 水球場地水質監測與過濾考核試卷
- 電視設備智能生物藥品政策法規研究技術考核試卷
- 紡織設備客戶需求分析與產品設計考核試卷
- 生物質燃氣發電技術在新能源領域的應用考核試卷
- 稀土金屬提煉過程中的資源保障與可持續發展策略考核試卷
- 2025年轉租的房屋租賃合同范本
- MOOC 大學英語聽說譯-河南理工大學 中國大學慕課答案
- 外科學試題庫及答案(共1000題)
- D502-15D502等電位聯結安裝圖集
- 2022年本科教學工作合格評估整改工作方案
- 廣東省建設工程造價咨詢服務收費項目和收費標準表[粵價函(2011)742號]
- 小學二年級三位數豎式計算800題
- pvc管采購合同
- DL/T 5203-2005《火力發電廠煤和制粉系統防爆設計技術規程》簡介
- 水利工程建設施工監理機構監理人員配置標準導則
- 投資回收期估算表
評論
0/150
提交評論