第4章數據庫及應用程序開發(fā)數據庫設計_第1頁
第4章數據庫及應用程序開發(fā)數據庫設計_第2頁
第4章數據庫及應用程序開發(fā)數據庫設計_第3頁
第4章數據庫及應用程序開發(fā)數據庫設計_第4頁
第4章數據庫及應用程序開發(fā)數據庫設計_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、.1第第4章章 數據庫及應用程序開發(fā)數據庫及應用程序開發(fā) 數據庫設計數據庫設計.24.2 數據庫設計n只有對數據庫進行合理的邏輯設計和有效的只有對數據庫進行合理的邏輯設計和有效的物理設計才能開發(fā)出完善而高效的信息系統物理設計才能開發(fā)出完善而高效的信息系統 n需求分析需求分析n概念設計概念設計n邏輯結構設計邏輯結構設計n物理結構設計物理結構設計n數據庫實施階段數據庫實施階段 .34.2.1需求分析與概念設計n1需求分析需求分析n需求分析就是分析用戶的要求需求分析就是分析用戶的要求 n結果是否準確地反映了用戶的實際要求,將直接影響結果是否準確地反映了用戶的實際要求,將直接影響到后面各個階段的設計,

2、并影響到設計結果是否合理到后面各個階段的設計,并影響到設計結果是否合理和實用和實用n需求分析的任務:需求分析的任務: n詳細調查要處理的對象詳細調查要處理的對象n了解原系統工作概況了解原系統工作概況,明確用戶的各種需求明確用戶的各種需求 n確定新系統的功能確定新系統的功能n考慮今后可能的擴充和改變考慮今后可能的擴充和改變.4n信息要求信息要求n要從數據庫中獲得信息的內容與性質要從數據庫中獲得信息的內容與性質n處理要求處理要求n要完成什么處理功能,對處理的響應時間有什么要求。要完成什么處理功能,對處理的響應時間有什么要求。n安全性與完整性要求安全性與完整性要求n安全性要求描述不同用戶使用和操作數

3、據庫的情況安全性要求描述不同用戶使用和操作數據庫的情況n完整性要求描述數據之間的關聯以及數據的取值范圍完整性要求描述數據之間的關聯以及數據的取值范圍.52概念設計概念設計 n以以DFDDFD和和DDDD提供的信息作為輸入,運用信息模提供的信息作為輸入,運用信息模型工具對目標進行描述,并以用戶能理解的形型工具對目標進行描述,并以用戶能理解的形式表達信息。這種表達獨立于具體的式表達信息。這種表達獨立于具體的DBMS DBMS nERER方法方法實體實體聯系模型聯系模型 n將現實世界抽象為具有屬性的實體及聯系。畫將現實世界抽象為具有屬性的實體及聯系。畫出一張出一張ER圖,就得到了一個對系統信息的初圖

4、,就得到了一個對系統信息的初步描述,進而形成數據庫的概念模型。步描述,進而形成數據庫的概念模型。 .64.2.2邏輯結構設計邏輯結構設計 nER關系模型關系模型n步驟:步驟:n將概念結構轉化為一般的關系模型。將概念結構轉化為一般的關系模型。n將轉化來的關系模型向特定將轉化來的關系模型向特定DBMSDBMS支持下的數支持下的數據模型轉換。據模型轉換。n對數據模型進行優(yōu)化對數據模型進行優(yōu)化.71數據庫邏輯模型的產生(1 1)一個實體型轉換為一個關系模式。實體的)一個實體型轉換為一個關系模式。實體的屬性就是關系的屬性,實體的碼就是關系的碼。屬性就是關系的屬性,實體的碼就是關系的碼。.8(2)一個)一

5、個1:l聯系,聯系,n可以轉換為一個獨立的關系模式:各實體的碼可以轉換為一個獨立的關系模式:各實體的碼以及聯系本身的屬性均轉換為關系的屬性,每以及聯系本身的屬性均轉換為關系的屬性,每個實體的碼均是該關系的候選碼。個實體的碼均是該關系的候選碼。 n與一端的關系模式合并:在該關系模式的屬性與一端的關系模式合并:在該關系模式的屬性中加入另一個關系模式的碼和聯系本身的屬中加入另一個關系模式的碼和聯系本身的屬性性 。.9【例【例4-434-43】 將將1:1聯系的聯系的E-R圖轉換為關系模型。圖轉換為關系模型。.10方案方案1 n職工(職工(職工號職工號,姓名,年齡),姓名,年齡)n產品(產品(產品號產

6、品號,產品名,價格),產品名,價格)n負責(負責(職工號職工號,產品號產品號)n方案方案2n職工(職工(職工號職工號,姓名,年齡,產品號),姓名,年齡,產品號)n 產品(產品(產品號產品號,產品名,價格),產品名,價格)n方案方案3 3n職工(職工(職工號職工號,姓名,年齡),姓名,年齡)n產品(產品(產品號產品號,產品名,價格,職工號),產品名,價格,職工號)n方案方案3 3比較合理比較合理 .11(3)(3)一個一個1 1:n n聯系聯系n可以轉換為一個獨立的關系模式:可以轉換為一個獨立的關系模式:n與該聯系相連的各實體的碼以及聯系本身的與該聯系相連的各實體的碼以及聯系本身的屬性均換為關系

7、的屬性,而關系的碼為屬性均換為關系的屬性,而關系的碼為n n端端實體的碼實體的碼n與與n n端對應的關系模式合并:端對應的關系模式合并:n聯系本身的屬性均換為關系的屬性,再加聯系本身的屬性均換為關系的屬性,再加1 1端實體的碼端實體的碼.12【例【例4-44】 n將含有將含有1:n聯系的聯系的E-R圖轉換為關系模型圖轉換為關系模型 .13n方案方案1: 1:n1: 1:n聯系形成的關系獨立存在。聯系形成的關系獨立存在。n倉庫(倉庫(倉庫號倉庫號,地點,面積),地點,面積)n產品(產品(產品號產品號,產品名,價格),產品名,價格)n倉儲(倉庫號,倉儲(倉庫號,產品號產品號,數量),數量)n方案方

8、案2: 2: 聯系形成的關系與聯系形成的關系與n n端對象合并端對象合并n倉庫(倉庫(倉庫號倉庫號,地點,面積),地點,面積)n產品(產品(產品號產品號,產品名,價格,倉庫號,數量),產品名,價格,倉庫號,數量)n方案方案2較優(yōu)較優(yōu) .14(4 4)m m:n n聯系聯系n一個一個m m:n n聯系轉換為一個關系模式:聯系轉換為一個關系模式:n與該聯系相連的各實體的碼以及聯系本身與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性。而關系的碼的屬性均轉換為關系的屬性。而關系的碼為各實體碼的組合。為各實體碼的組合。.15【例【例4-45】 一個一個m m:n n聯系轉換為一個關系模式聯系

9、轉換為一個關系模式.16【例【例4-45】 n學生(學生(學號學號,姓名,年齡,性別);,姓名,年齡,性別);n課程(課程(課程號課程號,課程名,學時數);,課程名,學時數);n選修(選修(學號學號,課程號課程號,成績)。,成績)。.17(5)三個及以上實體間聯系三個及以上實體間聯系n三個或三個以上實體間的一個多元聯系轉換為三個或三個以上實體間的一個多元聯系轉換為一個關系模式。與該多元聯系相連的各實體的一個關系模式。與該多元聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性。碼以及聯系本身的屬性均轉換為關系的屬性。而關系的碼為各實體碼的組合。而關系的碼為各實體碼的組合。 .18【例【例4

10、-464-46】 一個一個m m:n n聯系轉換為一個關系模式聯系轉換為一個關系模式.19【例【例4-46】 n供應商(供應商(供應商號供應商號,供應商名,地址),供應商名,地址)n零件(零件(零件號零件號,零件名,單價),零件名,單價)n產品(產品(產品號產品號,產品名,型號),產品名,型號)n供應(供應(供應商號,零件號,產品號供應商號,零件號,產品號,數量),數量).20(6)(6)同一實體集聯系,同一實體集聯系,按上述按上述1 1:1 1,1:n1:n和和m m:n n三種情況分別處理。三種情況分別處理。.21【例【例4-47】 n將含有同一實體集的將含有同一實體集的1:n1:n聯系的

11、聯系的E-RE-R圖轉換為關圖轉換為關系模型系模型 .22n方案方案1 1:轉換為兩個關系模式。:轉換為兩個關系模式。 職工(職工(職工號職工號,姓名,年齡),姓名,年齡) 領導(領導(領導工號領導工號,職工號職工號)n方案方案2:2:轉換為一個關系模式。轉換為一個關系模式。 職工(職工(職工號職工號,姓名,年齡,領導工號),姓名,年齡,領導工號).23【例【例4-48】 n將含有同實體集間將含有同實體集間m:n聯系的聯系的E-R圖轉換為關圖轉換為關系模式系模式 .24n零件(零件(零件號零件號,名稱,價格),名稱,價格)n組裝(組裝(組裝件號組裝件號,零件號,零件號,數量),數量).252.

12、數據模型的優(yōu)化數據模型的優(yōu)化 n以規(guī)范化理論為指導以規(guī)范化理論為指導 n(1 1)確定數據依賴。按需求分析,寫出各)確定數據依賴。按需求分析,寫出各屬性之間的數據依賴。屬性之間的數據依賴。n(2 2)考查是否存在部分函數依賴、傳遞函)考查是否存在部分函數依賴、傳遞函數依賴等,確定各關系模式分別屬于第幾范數依賴等,確定各關系模式分別屬于第幾范式。式。n(3 3)按照需求分析對數據處理的要求,確)按照需求分析對數據處理的要求,確定是否需要對它們進行合并或分解。定是否需要對它們進行合并或分解。n并不是規(guī)范化程度越高的關系就越好并不是規(guī)范化程度越高的關系就越好 .263設計用戶模式設計用戶模式 n利用

13、視圖功能設計更符合局部用戶需要的用戶利用視圖功能設計更符合局部用戶需要的用戶外模式。外模式。n定義數據庫模式主要是從系統的時間效率、空定義數據庫模式主要是從系統的時間效率、空間效率、易維護等角度出發(fā)。間效率、易維護等角度出發(fā)。n用戶外模式與模式是獨立的,因此在定義用戶用戶外模式與模式是獨立的,因此在定義用戶外模式時更應該注重考慮用戶的習慣與方便外模式時更應該注重考慮用戶的習慣與方便 n(1 1)使用更符合用戶習慣的別名)使用更符合用戶習慣的別名n(2 2)針對不同級別的用戶定義不同的外模)針對不同級別的用戶定義不同的外模式,以滿足系統對安全性的要求。式,以滿足系統對安全性的要求。.274.2.

14、3數據庫物理設計及實施n物理設備上的存儲結構與存取方法稱為數據庫物理設備上的存儲結構與存取方法稱為數據庫的物理結構的物理結構 n1確定數據的存儲結構確定數據的存儲結構n綜合考慮存取時間、存儲空間利用率和維護代價綜合考慮存取時間、存儲空間利用率和維護代價3方面的因素。方面的因素。n2 2設計數據的存取路徑設計數據的存取路徑n在關系數據庫中,選擇存取路徑主要是指確定如在關系數據庫中,選擇存取路徑主要是指確定如何建立索引。何建立索引。 .28索引索引 n(1 1)聚簇索引)聚簇索引n聚簇鍵相同的元組自然地被放在同一個物理聚簇鍵相同的元組自然地被放在同一個物理頁中,如果元組過多,一個物理頁放不下,頁中

15、,如果元組過多,一個物理頁放不下,則被鏈接到多個物理頁中則被鏈接到多個物理頁中 。n(2 2)非聚簇索引)非聚簇索引n索引頁上的順序與物理數據頁上的順序一般索引頁上的順序與物理數據頁上的順序一般不一致。不一致。.29建立索引原則建立索引原則n一個(組)屬性經常在操作條件中出現。一個(組)屬性經常在操作條件中出現。n一個(組)屬性經常作為聚集函數的參數。一個(組)屬性經常作為聚集函數的參數。n一個(組)屬性經常在連接操作的連接條件中一個(組)屬性經常在連接操作的連接條件中出現。出現。 .30建立聚簇索引原則建立聚簇索引原則n檢索數據時,常以某個(組)屬性作為排序、檢索數據時,常以某個(組)屬性作

16、為排序、分組條件。分組條件。n檢索數據時,常以某個(組)屬性作為檢索限檢索數據時,常以某個(組)屬性作為檢索限制條件,并返回大量數據。制條件,并返回大量數據。n表中某個(組)的值重復性較大。表中某個(組)的值重復性較大。.313確定數據的存放位置n為了提高系統性能,數據應該根據應用情況將為了提高系統性能,數據應該根據應用情況將易變部分與穩(wěn)定部分、經常存取部分和存取頻易變部分與穩(wěn)定部分、經常存取部分和存取頻率較低部分分開存放。率較低部分分開存放。 n數據庫數據備份、日志文件備份等,可以考慮數據庫數據備份、日志文件備份等,可以考慮存放在磁帶上。存放在磁帶上。n可以考慮將表和索引分別放在不同的磁盤上

17、??梢钥紤]將表和索引分別放在不同的磁盤上。在查詢時,由于兩個磁盤驅動器分別在工作,在查詢時,由于兩個磁盤驅動器分別在工作,因而可以保證物理讀寫速度比較快。因而可以保證物理讀寫速度比較快。.324確定系統配置確定系統配置 n同時使用數據庫的用戶數同時使用數據庫的用戶數n同時打開的數據庫對象數同時打開的數據庫對象數n使用的緩沖區(qū)長度、個數使用的緩沖區(qū)長度、個數n時間片大小,數據庫大小時間片大小,數據庫大小n物理塊的大小,物理塊的裝填因子物理塊的大小,物理塊的裝填因子.335數據庫的實施(1 1)定義數據庫結構)定義數據庫結構(2 2)數據裝載)數據裝載.34例子建立例子建立圖書館圖書館需求分析需求

18、分析n查詢圖書查詢圖書:通過書名和類別查詢庫中的圖書,:通過書名和類別查詢庫中的圖書,其中書名為其中書名為模糊查詢模糊查詢。n借書處理借書處理:在查詢的基礎上完成借書登記處理。:在查詢的基礎上完成借書登記處理。借書時需要輸入書號和讀者編號,修改圖書表借書時需要輸入書號和讀者編號,修改圖書表記錄和增加借閱表的記錄。記錄和增加借閱表的記錄。n還書處理還書處理:實現還書處理操作。還書時需要先:實現還書處理操作。還書時需要先修改圖書記錄,改變其借出否標志,再刪除相修改圖書記錄,改變其借出否標志,再刪除相關的借閱記錄。關的借閱記錄。.35數據庫設計數據庫設計n概念模型概念模型讀者讀者 .36圖書圖書 .

19、37借書借書 .38數據庫邏輯模型數據庫邏輯模型 n讀者讀者(編號編號,姓名,單位,性別,電話),姓名,單位,性別,電話)n圖書圖書(書號書號,類別,出版社,作者,書名,定,類別,出版社,作者,書名,定價,借出否)價,借出否)n借閱借閱(書號,讀者編號書號,讀者編號,借閱日期),借閱日期) .39規(guī)范化規(guī)范化 n圖書圖書:書號書號類別,書號類別,書號出版社,書號出版社,書號作者,書號作者,書號書名,書號書名,書號定價,書號定價,書號借出借出否否;n讀者讀者:編號編號姓名,編號姓名,編號單位,編號單位,編號性性別,編號別,編號電話電話;n借閱借閱:(書號,讀者編號):(書號,讀者編號)借閱日期;借閱日期;所有非主屬性對碼完全并直接依賴。各表均為第所有非主屬性對碼完全并直接依賴。各表均為第三范式。三范式。.40完整性約束完整性約束 n主碼約束:主碼約束:在在“圖書圖書”表中,表中,“書號書號”為主碼;為主碼;在在“讀者讀者”表中,表中

溫馨提示

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

最新文檔

評論

0/150

提交評論