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

下載本文檔

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

文檔簡介

第二章數(shù)據(jù)模型本章要點2.1數(shù)據(jù)建模的過程2.2概念模型2.3數(shù)據(jù)模型的組成要素2.4結(jié)構(gòu)化數(shù)據(jù)模型2.5非結(jié)構(gòu)化數(shù)據(jù)模型2.1數(shù)據(jù)建模的過程數(shù)據(jù)模型(DataModel)是對現(xiàn)實世界中對象(事物)的數(shù)據(jù)抽象包含對象的數(shù)據(jù)特征和功能操作是信息系統(tǒng)建設的基礎數(shù)據(jù)建模應滿足三方面要求能比較真實地模擬現(xiàn)實世界容易為人所理解便于在計算機上實現(xiàn)數(shù)據(jù)模型分成三類(三個抽象層次):(1)概念模型

用某種語言或符號描述對象及其之間的聯(lián)系,如E-R圖,UML等獨立于計算機系統(tǒng)和數(shù)據(jù)庫管理系統(tǒng)便于數(shù)據(jù)庫設計人員與用戶間交流(2)邏輯模型用嚴格的形式化定義描述對象及其之間的聯(lián)系,如關(guān)系模型面向具體的計算機系統(tǒng)和數(shù)據(jù)庫管理系統(tǒng)便于計算機實現(xiàn)(3)物理模型描述數(shù)據(jù)庫的物理結(jié)構(gòu),如存儲方式、索引結(jié)構(gòu)等面向具體的計算機系統(tǒng)和數(shù)據(jù)庫管理系統(tǒng)由數(shù)據(jù)庫管理系統(tǒng)實現(xiàn)概念模型邏輯模型物理模型數(shù)據(jù)建模過程2.2概念模型概念模型是數(shù)據(jù)庫設計的第一步是數(shù)據(jù)庫設計人員和用戶之間進行交流的載體好的概念模型應簡單清晰,易于理解,語義表達全面2.2概念模型基本術(shù)語:實體,聯(lián)系,碼,…常用表示方法:E-R圖,UML類圖常用建模工具:Visio,PowerDesigner,MySQLWorkbench等

基本術(shù)語現(xiàn)實世界的信息是通過實體、屬性以及聯(lián)系等概念的劃分來認識的。實體(Entity)

客觀存在并可相互區(qū)別的事物稱為實體,可以是具體的人、事、物或抽象的概念。屬性(Attribute)

實體所具有的某一特性稱為屬性。一個實體可以由若干個屬性來刻畫。

碼(Key)

唯一標識實體的屬性(集)域(Domain)

屬性的取值范圍實體型(EntityType)具有相同屬性的實體必然具有共同的靜態(tài)特征,理解為類型。用實體名及其屬性名集合來描述。例如,銷售記錄中服裝編號,顧客編號,購買日期,數(shù)量等屬性構(gòu)成一個銷售記錄的實體型

實體集(EntitySet)具有相同特征的實體集合例如,所有銷售記錄就是一個實體集聯(lián)系(Relationship)

現(xiàn)實世界中事物內(nèi)部以及事物之間的聯(lián)系在信息世界中抽象為實體內(nèi)部的聯(lián)系和實體之間的聯(lián)系實體型間的聯(lián)系類型一對一聯(lián)系(1:1)一對多聯(lián)系(1:n)多對多聯(lián)系(m:n)兩個實體型間的一對一聯(lián)系

如果對于實體集A中的每一個實體,實體集B中至多有一個實體與之聯(lián)系,反之亦然,則稱實體集A與實體集B具有一對一聯(lián)系。記為1:1。實例班級—班長

實體集A實體集B兩個實體型間的一對多聯(lián)系如果對于實體集A中的每一個實體,實體集B中有n個實體(n≥0)與之聯(lián)系,反之,對于實體集B中的每一個實體,實體集A中至多只有一個實體與之聯(lián)系,則稱實體集A與實體集B有一對多聯(lián)系,記為1:n實例

班級—學生服裝廠商—服裝

實體集A實體集B兩個實體型間的多對多聯(lián)系(m:n)如果對于實體集A中的每一個實體,實體集B中有n個實體(n≥0)與之聯(lián)系,反之,對于實體集B中的每一個實體,實體集A中也有m個實體(m≥0)與之聯(lián)系,則稱實體集A與實體B具有多對多聯(lián)系。記為m:n實例

顧客—服裝學生—課程實體集A實體集B多個實體型間的一對多聯(lián)系若實體集E1,E2,...,En存在聯(lián)系,對于實體集Ej(j=1,2,...,i-1,i+1,...,n)中的給定實體,最多只和Ei中的一個實體相聯(lián)系,則我們說Ei與E1,E2,...,Ei-1,Ei+1,...,En之間的聯(lián)系是一對多的。實例

設有課程、教師與參考書三個實體型,如果一門課程可以有若干個教師講授,使用若干本參考書,每一個教師只講授一門課程,每一本參考書只供一門課程使用,則課程與教師、參考書之間的聯(lián)系是一對多的。課程選修教師1m參考書n多個實體型間的一對多聯(lián)系多個實體型間的多對多聯(lián)系網(wǎng)上商店供應服裝mn供應商p工程項目承擔機械工具mn施工隊p同一實體型內(nèi)的一對多聯(lián)系實例:職工實體集內(nèi)部具有領(lǐng)導與被領(lǐng)導的聯(lián)系,某一職工(干部)“領(lǐng)導”若干名職工,一個職工僅被另外一個職工直接領(lǐng)導,這是一對多的聯(lián)系同一實體型內(nèi)的一對一聯(lián)系同一實體型內(nèi)的多對多聯(lián)系職工領(lǐng)導1nPeterPin-ShanChen于1976年提出基本繪圖規(guī)則:實體型——用矩形表示屬性——用橢圓形表示碼——用下劃線表示服裝編號顏色型號品牌價格一種概念模型表示方法—E-R圖聯(lián)系——用菱形表示,同時標注聯(lián)系的類型實體型1聯(lián)系名實體型2111:1聯(lián)系實體型1聯(lián)系名實體型2mnm:n聯(lián)系實體型1聯(lián)系名實體型21n1:n聯(lián)系若聯(lián)系本身有自己的屬性,也用橢圓表示課程選修學生mn成績舉例—零件供應系統(tǒng)E-R圖年齡職稱電話號電話號職工號庫存量項目號零件號負責人倉庫號供應商號地址姓名賬號供應量名稱描述規(guī)格預算面積姓名零件項目倉庫供應商職工供應庫存領(lǐng)導工作單價1nnnnmm1p數(shù)據(jù)建模工具采用數(shù)據(jù)建模工具將使數(shù)據(jù)庫設計過程更簡單,數(shù)據(jù)模型描述更規(guī)范,并有助于后續(xù)處理(如生成SQL)。常用數(shù)據(jù)庫建模工具,如Visio,PowerDesigner等,大多采用圖形元素和參數(shù)設置相結(jié)合的方法來描述以下信息(但不局限于):實體型的名稱、注解屬性的名稱、類型、長度、默認值、強制條件碼(主碼),索引,唯一性約束聯(lián)系(外碼)的名稱、類型輕松掌握和運用數(shù)據(jù)建模技術(shù)的最好方法是,從小型工具開始,逐漸深入和提高。舉例—學生選課系統(tǒng)E-R圖(Visio)舉例—員工管理系統(tǒng)E-R圖(Visio)舉例—員工管理系統(tǒng)E-R圖(PowerDesigner)舉例—圖書借閱系統(tǒng)E-R圖(MySQLWorkbench)另一種概念模型表示方法—UML統(tǒng)一建模語言簡稱UML(UnifiedModelingLanguage),是一種通用的建模語言,具有創(chuàng)建系統(tǒng)的靜態(tài)結(jié)構(gòu)和動態(tài)行為等多種模型的能力。它包含用例圖、類圖、對象圖、狀態(tài)圖、序列圖、協(xié)作圖、活動圖、組件圖和展開圖等九種主要圖例。用例圖序列圖類圖——主要用于數(shù)據(jù)庫設計兩個類間的關(guān)聯(lián)類的繼承參考附錄A—網(wǎng)上服裝銷售系統(tǒng)服裝,會員,訂單,倉庫,供應商,…作業(yè)數(shù)據(jù)庫概念模型設計連鎖超市管理系統(tǒng)(商店、職工、商品、客戶)校園社團組織管理系統(tǒng)(社團、學生、活動)醫(yī)院病患信息管理系統(tǒng)(病房、病床、病人、醫(yī)生)體育館運動器材管理系統(tǒng)(器材、供應商、運動員、管理員)科技競賽信息管理系統(tǒng)(學生,團隊,導師,競賽,項目)網(wǎng)上書店系統(tǒng)(圖書,出版社,客戶,購物籃)……分析系統(tǒng)需求,描述對象及其關(guān)系,畫出E-R圖!2.3數(shù)據(jù)模型的組成要素數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)操作數(shù)據(jù)的完整性約束數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)描述數(shù)據(jù)庫的組成對象以及對象之間的聯(lián)系。通常包含兩類:與對象的類型、內(nèi)容、性質(zhì)相關(guān)的(比如關(guān)系模型中的域、屬性、關(guān)系等)與數(shù)據(jù)之間聯(lián)系有關(guān)的數(shù)據(jù)結(jié)構(gòu)是刻畫一個數(shù)據(jù)模型性質(zhì)的最重要方面數(shù)據(jù)結(jié)構(gòu)是對系統(tǒng)靜態(tài)特性的描述數(shù)據(jù)操作數(shù)據(jù)操作對數(shù)據(jù)庫中各種對象(型)的實例(值)允許執(zhí)行的操作及有關(guān)的操作規(guī)則數(shù)據(jù)操作的類型查找更新(包括插入、刪除、修改)數(shù)據(jù)操作是對系統(tǒng)動態(tài)特性的描述數(shù)據(jù)的約束條件數(shù)據(jù)的約束條件一組完整性規(guī)則的集合。完整性規(guī)則是給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約規(guī)則,用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫狀態(tài)以及狀態(tài)的變化,以保證數(shù)據(jù)的正確、有效、相容。數(shù)據(jù)的約束條件數(shù)據(jù)模型對約束條件的定義反映和規(guī)定本數(shù)據(jù)模型必須遵守的基本的通用的完整性約束條件。例如在關(guān)系模型中,任何關(guān)系必須滿足實體完整性和參照完整性兩個條件。提供定義完整性約束條件的機制,以反映具體應用所涉及的數(shù)據(jù)必須遵守的特定的語義約束條件。2.4結(jié)構(gòu)化數(shù)據(jù)模型層次模型(HierarchicalModel)網(wǎng)狀模型(NetworkModel)關(guān)系模型(RelationalModel)面向?qū)ο竽P?ObjectOrientedModel)非關(guān)系模型層次模型按照層次結(jié)構(gòu)的形式組織數(shù)據(jù),即用樹型結(jié)構(gòu)表示實體集與實體集之間的聯(lián)系,其中用結(jié)點表示實體集,結(jié)點之間聯(lián)系的基本方式是1:n。網(wǎng)狀模型用圖型結(jié)構(gòu)表示實體集與實體集之間的聯(lián)系,更具普遍性,可以方便地表示各種類型的聯(lián)系。關(guān)系模型美國IBM公司的研究員E.F.Codd于1970年提出關(guān)系模型,1981年為此獲得圖靈獎。關(guān)系模型是目前最重要的一種數(shù)據(jù)模型目前很多數(shù)據(jù)庫產(chǎn)品都是基于關(guān)系模型的,如Oracle(甲骨文)、MicrosoftSQLServer、IBMDB2、Sybase、MySQL等。關(guān)系模型1.關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)2.關(guān)系模型的基本術(shù)語3.關(guān)系模型的數(shù)據(jù)操縱與完整性約束4.關(guān)系模型的優(yōu)缺點關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)關(guān)系模型用二維表格表示實體集及其屬性設實體集R有屬性A1,

A2,…,An,實體集的型可用一個二維表的框架表示,表中每一元組表示實體集的值A1A2A3…Ana11…am1a12…am2a13…am3………a1n…amnA1A2A3…An

(a)關(guān)系R的型(b)關(guān)系R的值服裝編號品牌型號顏色價格W001佐丹奴YH287藍239W002佐丹奴JK946綠189W003李寧LI143紅499W004美津濃U7896紫699關(guān)系模型的基本概念關(guān)系(Relation)一個關(guān)系對應一張二維表元組(Tuple)表中的一行即為一個元組屬性(Attribute)表中的一列即為一個屬性,給每一個屬性起一個名稱即屬性名域(Domain)屬性的取值范圍關(guān)系模型的基本概念碼(Key)

表中的某個屬性組,可唯一確定一個元組分量

元組中的一個屬性值關(guān)系模式

對關(guān)系的描述格式為:關(guān)系名(屬性1,屬性2,…,屬性n)例如,服裝(服裝編號,品牌,型號,顏色,價格)關(guān)系模型的數(shù)據(jù)操縱與完整性約束關(guān)系模型的數(shù)據(jù)操縱主要包括:查詢、插入、刪除和修改。完整性約束:對數(shù)據(jù)庫操作必須滿足的條件關(guān)系的完整性約束條件主要包括:實體完整性、參照完整性和用戶自定義完整性關(guān)系模型的優(yōu)缺點優(yōu)點建立在堅實的數(shù)學理論基礎上數(shù)據(jù)結(jié)構(gòu)簡單、清晰,用戶易懂易用關(guān)系模型的存取路徑對用戶透明,數(shù)據(jù)獨立性高缺點存取路徑對用戶透明導致查詢效率較低為提高性能,須進行查詢優(yōu)化,DBMS開發(fā)難度大面向?qū)ο蟮哪P兔嫦驅(qū)ο髷?shù)據(jù)模型(ObjectOrientedDataModel–OODM)采用面向?qū)ο蠓椒?gòu)造出來的數(shù)據(jù)模型在面向?qū)ο髷?shù)據(jù)模型中,用面向?qū)ο蠓椒ㄖ械囊恍┗靖拍詈头椒▉肀硎救齻€組成部分:對象、方法、類的繼承與合成關(guān)系模型與OO模型的對應關(guān)系關(guān)系模型OO模型表(元組)類(對象)KEYOID屬性屬性關(guān)系上的操作(增,刪,改,查詢)方法、消息完整性約束約束方法、消息ER模型類層次(OO模型)2.5非結(jié)構(gòu)化模型企業(yè)需要高效、安全的管理這些類型的數(shù)據(jù):結(jié)構(gòu)化半結(jié)構(gòu)化非結(jié)構(gòu)化XMLPDF很多應用中,文件和關(guān)系型數(shù)據(jù)相伴而生例如:文件管理系統(tǒng),醫(yī)學系統(tǒng),CAD,圖像系統(tǒng)Images將非結(jié)構(gòu)化數(shù)據(jù)集中到

溫馨提示

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

評論

0/150

提交評論