




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第5章數據庫設計數據庫設計概述從小型的單項事務處理系統到大型復雜的信息系統大都用先進的數據庫技術來保持系統數據的整體性、完整性和共享性。數據庫設計是建立數據庫及其應用系統的技術,是信息系統開發和建設中的核心技術,數據庫設計是指對于一個給定的應用環境,構造最優的數據庫模式,建立數據庫及其應用系統,使之能夠有效地存儲數據,滿足各種用戶的應用需求。數據庫設計方法規范設計法中比較著名的有新奧爾良方法,它將數據庫設計分為四個階段:需求收集和分析(了解和歸納用戶要求)、概念設計(信息分析和定義)、邏輯設計(設計實現)和物理設計(物理數據庫設計)。數據庫設計的基本步驟按照規范設計的方法,考慮數據庫及其應用系統開發全過程,將數據庫設計分為以下六個階段:需求分析;概念結構設計;邏輯結構設計;物理結構設計;數據庫實施;數據庫運行和維護。設計一個完善的數據庫應用系統是不可能一蹴而就的,它往往是上述六個階段的不斷反復。概念結構設計將收集和分析得到的用戶需求抽象為概念模型的過程就是概念結構設計。它是整個數據庫設計的關鍵。概念結構的主要特點是:概念結構是依據用戶信息建立的,完全獨立于實現細節,例如使用的DBMS、應用程序、硬件平臺等。能真實、充分反映現實世界,包括事物和事物之間的聯系,能滿足用戶對數據的處理要求。是對現實世界的一個真實模型。易于理解,從而可以用它和不熟悉計算機的用戶交換意見,用戶的積極參與是數據庫的設計成功的關鍵。易于更改,當應用環境和應用要求改變時,容易對概念模型修改和擴充。易于向關系、網狀、層次等各種數據模型轉換。概念結構設計的方法使用實體—聯系模型(Entity—Relationship,E—R模型)建立概念模型實體—聯系模型的主要元素有:實體屬性標識符聯系概念結構設計步驟確定實體確定實體的屬性確定實體的標識屬性(關鍵字)確定實體間的聯系和聯系類型畫出表示概念模型的E-R圖(利用相應的建模工具)確定屬性間的依賴關系邏輯結構設計邏輯結構設計的任務就是把概念結構設計階段設計好的基本E-R圖轉換為與選用DBMS產品所支持的數據模型相符合的邏輯結構。
將概念結構轉換為關系數據模型并進行優化數據庫的物理設計在物理上實現數據庫的邏輯設計包括:選用某一DBMS軟件,根據邏輯模型創建庫和表以及確定表的約束確定可獲得最佳性能的數據存貯結構和數據訪問方式為系統設計安全保護5.1實體—聯系模型的元素1.實體實體實例(實例)—客觀世界存在切可相互區別的某一人、物、事。實體—具有相同特征的可區別的實例的集合。實體——表實例——表中一行E—R圖中的表示:學生2.屬性用來描述實體的特征。實體的一個特征就稱為實體的一個屬性。屬性有屬性名,同一個實體的屬性名不能重復。實體中不同的實例具有不同的屬性值。
學號姓名性別年齡系部學生簡單屬性和組合屬性單值屬性和多值屬性3.標識符可以用來識別或標識實例的屬性或屬性組。每個實例在這些屬性上具有不同的值。(候選鍵)一個實體可能有多個標識符,選其中一個做為實體的標識符,并用下劃線表出。(主鍵)4.聯系表示實體間的關聯。它通常表示一個活動,如訂購、選課等。一個訂購活動表示了商品、顧客、銷售員實體間的關聯;一個選課活動表示了學生、課程實體間的關聯聯系也可以有屬性。如選課有選修時間、選修成績等。學生課程選修選修時間選修成績mn與聯系有關的幾個概念最大基數和最小基數參與者部分參與、全部參與聯系的元二元聯系的類型(1)一對一聯系(1:1)(2)一對多聯系(1:n)(3)多對多聯系(m:n)多元聯系兩個或兩個以上實體之間存在的聯系。遞歸聯系同一個實體內部實例之間的聯系。也有三種類型數據庫設計的過程概念模型設計邏輯數據庫設計規范化理論的應用物理數據庫設計概念模型設計確定實體確定實體的屬性確定實體的標識屬性(關鍵字)確定實體間的聯系和聯系類型畫出表示概念模型的E-R圖(利用相應的建模工具)確定屬性間的依賴關系合并E-R圖表示相同事物的實體名和屬性名要統一要消除同名異義和同義異名在不同的局部E-R圖中同一實體包含的屬性可能有所區別,合并時要統一實體合并E-R圖局部E-R圖合并為全局E-R圖在進行E-R圖合并時,要注意消除不一致性和冗余。因此,要特別注意以下一些問題:表示相同事物的實體名和屬性名要統一相同的兩個實體在不同的E-R圖中可能存在著不同的聯系合并后得到全局E-R圖
整體概念模型內部必須具有一致性,不能有相互矛盾的表述;整體概念模型必須能夠準確反映原來的每個局部模型的結構,包括實體、屬性和聯系等;整體概念模型必須能夠滿足需求分析階段所確定的所有要求,這一條實際蘊涵了以上兩條。5.2E-R模型轉換為關系模型E-R模型是根據用戶需求建立的概念模型。而數據庫的物理實現依據的是數據模型,關系數據庫的實現依據的是關系(數據)模型。所以,需要將E-R模型轉換為關系模型。一個關系可用一個關系模式來表示,一個數據庫的所有關系模式就構成這個數據庫的模式,即數據庫的關系模型(邏輯模型)。將E-R模型轉換為關系模型實際上就是要將實體、實體的屬性和實體之間的聯系轉換為關系模式。E-R圖轉換規則5.2.1實體的轉換一個實體轉換為一個關系,實體的屬性就是關系的屬性,實體的標識符就是關系的主鍵。在關系模式中,用下劃線來表示主鍵,關系名極其屬性名可用對應實體的實體名和屬性名。在實際應用中,關系模式中的關系名和屬性名往往用英文或拼音表示,以方便程序的編寫。例5.1將圖5-7中的兩個實體轉換為兩個關系模式解:班主任(教工號,姓名,性別,職稱,出生日期)班級(班級編號,系別,專業)注意:①實體中如果有組合屬性,要將它分解成簡單屬性;②實體中如果有多值屬性,則把實體分解成兩個關系:一個是實體轉換得到的關系,其屬性是多值屬性之外的所有屬性;另一個實體的屬性是多值屬性和原實體標識符。例:圖5-2中的實體“教工”有多值屬性“家屬姓名”,則可轉換為以下兩個關系:教工(教工號,姓名,性別,出生日期,用戶名,域名)教工家屬(教工號,家屬姓名)5.2.2聯系的轉換1.二元聯系的轉換1:1聯系的轉換方法可以與任意一端對應的關系模式合并,合并后的關系模式屬性為:實體A屬性+聯系屬性+實體B的標識符。實體B的標識符在關系模式B中為主鍵,在關系模式A中為外鍵。例5.3圖5-4a的關系模型學生(學號,姓名,性別,年齡,系別,借書證號)借書證(借書證號,發證日期,有效期)1:n聯系的轉換方法與n端對應的關系模式合并。例5.4將圖5-4b轉換為相應關系模型解:E-R圖中,1端為宿舍,N端為學生∴將聯系與學生關系模式合并學生(學號,姓名,性別,年齡,系別,
宿舍編號)宿舍(宿舍編號,宿舍名稱,宿舍地址)M:n聯系的轉換方法一個m:n聯系轉換為一個關系模式,這個關系模式的屬性為:實體A的標識符+實體B的標識符+聯系屬性。例5.5圖5-4c的關系模型學生(學號,姓名,性別,年齡,系別)課程(課程號,課程名,前修課程號,學分)選課(學號,課程號,成績)2.多元聯系的轉換3.遞歸聯系的轉換它的三種情況轉換與二元聯系轉換原則相同。為了容易理解,暫時將同一個實體看成兩個實體。先轉換成兩個相同關系:公民(身份證號)再根據1:1轉換原則,將實體B的標識符加到關系模式A的屬性中,為避免屬性名重復,將B的標識符名改為被贊助人身份證號。∴關系模式為公民(身份證號,被贊助人身份證號)公民公民贊助5.2.3弱實體與轉換1.弱實體——這種實體在數據庫中存在的情況依賴于其它實體的存在。2.強實體(實體)——不是弱實體的實體。例:職工和家屬兩個實體,家屬實體的存在依賴職工實體。當職工調離,則該職工的家屬要刪除。弱實體在E-R圖中用雙線矩形框表示,與之的聯系用雙線菱形框表示。家屬職工擁有3.ID依賴型弱實體這種弱實體的物理存在依賴于實體。如,“宿舍樓”與“房間”這兩個實體。4.弱實體的轉換也可轉換為關系,但在關系中要加入強實體的標識符。弱實體轉換后得到的關系,其主鍵為強實體標識符加弱實體標識符組成。
如上圖轉換后的關系模式為:職工(職工號,姓名)家屬(職工號,家屬姓名,家屬關系)邏輯數據庫設計
將E-R圖中的實體和聯系轉換為關系模式
確定各個關系模式的主關鍵字,考慮實體完整性確定各個關系模式的外部關鍵字,考慮參照完整性確定各個關系模式中屬性的約束、規則和默認值,考慮域完整性考慮特殊的用戶定義完整性根據用戶需求設計視圖考慮安全方案和用戶使用權限等
規范化理論的應用對關系數據庫來說,邏輯數據庫設計的結果是一組關系模式。為了提高數據庫的設計質量,需要應用關系規范理論對這些關系模式進行規范化處理,即通過模式分解使關系達到較高的范式(至少達到第三范式)。物理數據庫設計估算數據庫的數據存儲量安排數據庫的存儲設計索引設計備份策略其他在物理數據模型中可以定義的內容指定目標數據庫定義表定義關鍵字定義視圖定義列定義域定義約束規則定義索引定義觸發器定義參照聯系定義擴展屬性數據庫設計工具PowerDesignerPowerDesigner簡介概念數據庫設計物理數據庫設計建立數據庫PowerDesigner簡介PowerDesigner的主要模塊概念數據模型(ConceptualDataModel)物理數據模型(PhysicalDataModel)面向對象模型(Object-OrientedModel)業務處理模型(BusinessProcessModel)CDM和PDM可以完成的工作可以使用E-R圖建立概念數據模型(CDM)可以針對特定的數據庫管理系統生成物理數據模型(PDM)可以定制PDM,以適應物理和性能上的考慮可以生成目標數據庫管理系統的建立數據庫的腳本可以生成參照完整性觸發器(如果目標數據庫支持)可以定制和打印模型的文檔報告可以對已經存在的數據庫和應用實施逆向工程可以為PDM對象定義擴展屬性使用PowerDesigner設計數據庫的處理流程設計概念數據模型由概念數據模型(CDM)生成初步的物理數據模型(PDM)在生成的物理數據模型中完成物理數據庫設計生成創建目標數據庫的腳本甚至可以直接創建目標數據庫使用PowerDesigner完成逆向操作的處理流程連接到目標數據庫由目標數據庫生成物理數據模型由物理數據模型生成概念數據模型概念數據庫設計建立概念數據模型的常規操作包括:定義實體定義實體的屬性定義聯系概念數據模型設計界面中的工具板其中的命令按鈕大致可以分為三類:設計E-R圖的實體、聯系、繼承和屬性等概念數據模型中的要素點取、套取、抓取、放大、縮小、剪裁等編輯手段和工具文本、直線、矩形、橢圓形、圓角矩形、任意形狀、多邊形等輔助信息和符號一個簡單的概念數據模型疑問:在職工實體中沒有包含倉庫號屬性,在訂購單實體中沒有包含職工號和供應商號屬性
這些1:n聯系使用的符號不完全一樣
多個實體之間的聯系物理數據庫設計一般根據概念數據模型生成物理數據模型,然后再進行一些必要的物理設計和補充。在生成物理數據模型時需要指定目標數據庫和PDM文件名。物理數據模型設計界面中的工具板其中的命令按鈕大致可以分為三類:表、視圖、參照、屬性等物理數據模型中的要素點取、套取、抓取、放大、縮小、剪裁等編輯手段和工具文本、直線、矩形、橢圓形、圓角矩形、任意形狀、多邊形等輔助信息和符號
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 提升2025年公共衛生執業醫師考試試題及答案的水平
- 醫學基礎知識現代解析試題及答案2024年
- 強化基礎2025鄉村全科醫師考試試題及答案
- 樂山零診試題及答案生物
- 提高護士臨床判斷能力的護士資格證考試試題及答案
- 護士資格證建筑知識廣度試題及答案
- 提高2025年稅務師考試應試能力的方案試題及答案
- 基礎藥理學的復習與理解方法試題及答案
- 時政人文面試題及答案
- (月考)第1-2單元綜合素養測評(培優卷)(含解析)-2024-2025學年三年級下冊數學常考易錯題(北師大版)
- 截樁頭合同模板
- 2025屆東北三省三校高三第二次聯考語文試卷含解析
- 套扣式高支模專家論證施工方案
- 專題03辨析題解題技巧與方法(課件)道德與法治中考復習題型解題技巧與方法
- GB/T 44113-2024用戶側電化學儲能系統并網管理規范
- 物業客服儀容儀表
- 《干部履歷表》(1999版電子版)
- 內酰胺類皮試培訓
- 三年級語文下冊 期末復習非連續文本閱讀專項訓練(一)(含答案)(部編版)
- 碧桂園物業管家述職報告
- 1248國開電大本科《公共部門人力資源管理》自檢自測試題及答案
評論
0/150
提交評論