第7章語義建模_第1頁
第7章語義建模_第2頁
第7章語義建模_第3頁
第7章語義建模_第4頁
第7章語義建模_第5頁
已閱讀5頁,還剩43頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、數(shù)據(jù)庫原理與應用數(shù)據(jù)庫原理與應用Principle of the database and application信息學院軟件工程系信息學院軟件工程系1u關系數(shù)據(jù)理論關系數(shù)據(jù)理論( (即即“模式設計理論模式設計理論”) )主要主要研究的問題是如何構造合理的關系,使之研究的問題是如何構造合理的關系,使之能準確地反應現(xiàn)實世界,有利于應用和具能準確地反應現(xiàn)實世界,有利于應用和具體的操作。體的操作。第7章 語義建模優(yōu)秀的數(shù)據(jù)庫設計是應用成功的基石27.1 概述概述3u理解數(shù)據(jù)含義是永遠不會停止的任務理解數(shù)據(jù)含義是永遠不會停止的任務u“語義建模語義建?!保菏菍υ噲D表示語義的所有:是對試圖表示語義的所有行

2、為的一個恰當描述行為的一個恰當描述u語義建模的多種稱呼:數(shù)據(jù)建模、實體語義建模的多種稱呼:數(shù)據(jù)建模、實體/聯(lián)系建模、實體建模和對象建模等聯(lián)系建模、實體建模和對象建模等u“語義建模語義建?!钡姆Q呼更恰當?shù)姆Q呼更恰當7.1 概述概述4u語義建模的總體方法語義建模的總體方法u1.辨別一組語義概念:討論現(xiàn)實世界辨別一組語義概念:討論現(xiàn)實世界n世界是由實體組成的,每個實體都有用來識別自身的特性n任何實體都可以通過聯(lián)系與其他實體建立關聯(lián)u2.設計一組相應的符號化的對象代表上述語義對象設計一組相應的符號化的對象代表上述語義對象u3.設計一組正規(guī)的常用的完整性規(guī)則設計一組正規(guī)的常用的完整性規(guī)則u4.設計一組用

3、來操作這些正規(guī)對象的操作符設計一組用來操作這些正規(guī)對象的操作符u對象、規(guī)則和操作符組成一個擴展的數(shù)據(jù)模型對象、規(guī)則和操作符組成一個擴展的數(shù)據(jù)模型57.2 ER模型模型7.2.1 概念模型概念模型7.2.2 E/R圖圖數(shù)據(jù)的三種范疇數(shù)據(jù)的三種范疇67.2.1 概念模型概念模型(Conceptual Model)u概念模型的用途概念模型的用途n用于信息世界的建模用于信息世界的建模n是現(xiàn)實世界到機器世界的一個中間層次是現(xiàn)實世界到機器世界的一個中間層次n是數(shù)據(jù)庫設計的有力工具是數(shù)據(jù)庫設計的有力工具n數(shù)據(jù)庫設計人員和用戶之間進行交流的語言數(shù)據(jù)庫設計人員和用戶之間進行交流的語言u對概念模型的基本要求對概念

4、模型的基本要求n較強的語義表達能力,能夠方便、直接地表達較強的語義表達能力,能夠方便、直接地表達應用中的各種語義知識應用中的各種語義知識n簡單、清晰、易于用戶理解簡單、清晰、易于用戶理解77.2.2 E/R 圖圖u信息世界的對象信息世界的對象-實體、屬性、聯(lián)系實體、屬性、聯(lián)系n將現(xiàn)實世界的研究抽象為信息世界的對象將現(xiàn)實世界的研究抽象為信息世界的對象n例如:學生個體抽象為例如:學生個體抽象為n學生(姓名,性別,出生日期,住址,電話)學生(姓名,性別,出生日期,住址,電話)u最有名的語義建模方法之一:實體聯(lián)系方法最有名的語義建模方法之一:實體聯(lián)系方法(E-R方法方法)n用用E-R圖來描述現(xiàn)實世界的

5、概念模型圖來描述現(xiàn)實世界的概念模型7.2.2 E-R 圖圖uE-R圖圖實體聯(lián)系圖(實體聯(lián)系圖(Entity-Relation)uER圖以圖形的方式表示數(shù)據(jù)庫的邏輯結構圖以圖形的方式表示數(shù)據(jù)庫的邏輯結構uER圖用實體、屬性、聯(lián)系等表示現(xiàn)實世界圖用實體、屬性、聯(lián)系等表示現(xiàn)實世界中數(shù)據(jù)對象的邏輯關系中數(shù)據(jù)對象的邏輯關系897.2.2 E/R圖圖u實體實體: An entity is an object in the real world that is distinguishable from other object.n客觀存在并可相互區(qū)別的事物客觀存在并可相互區(qū)別的事物n客觀對象,如倉庫、器件、

6、職工客觀對象,如倉庫、器件、職工等等n抽象事件,如訂貨、借書、足球賽抽象事件,如訂貨、借書、足球賽等等u實體集(實體集(Entity Set)n具有相同特征的一類實體的集合具有相同特征的一類實體的集合學生學生教師教師10“型型” 和和“值值” 的概念的概念u型型(Type)n對某一類數(shù)據(jù)的結構和屬性的說明對某一類數(shù)據(jù)的結構和屬性的說明u值值(Value)n是型的一個具體賦值是型的一個具體賦值u例如:學生實體例如:學生實體n實體型:實體型:n(學號,姓名,性別,系別,年齡,籍貫)(學號,姓名,性別,系別,年齡,籍貫)n該實體型的一個值:該實體型的一個值:n(201,李明,男,計算機,李明,男,計

7、算機,22,江蘇),江蘇)117.2.2 E/R圖圖u屬性(屬性(Attribute):):An entity is described using a set of attributes.n實體所具有的某一特性實體所具有的某一特性u一個實體可由若干個屬性來刻畫一個實體可由若干個屬性來刻畫 學生學生學號學號年齡年齡性別性別姓名姓名127.2.2. E/R圖圖u 碼(碼(Key) n唯一標識實體的屬性集稱為碼唯一標識實體的屬性集稱為碼n例如:身份證號是人的唯一標識例如:身份證號是人的唯一標識u域(域(Domain) n屬性的取值范圍稱為該屬性的屬性的取值范圍稱為該屬性的域域n如:如:年齡年齡的取

8、值范圍:正整數(shù)(的取值范圍:正整數(shù)(200)n如:如:性別性別的取值范圍:男、女的取值范圍:男、女137.2.2 E/R圖圖u 聯(lián)系(聯(lián)系(Relationship) n現(xiàn)實世界中事物內部以及事物之間的現(xiàn)實世界中事物內部以及事物之間的聯(lián)系聯(lián)系n實體內部的聯(lián)系實體內部的聯(lián)系和和實體之間的聯(lián)系實體之間的聯(lián)系u聯(lián)系的表示聯(lián)系的表示n菱形框內寫明聯(lián)系名菱形框內寫明聯(lián)系名n連線連接有關實體連線連接有關實體n標注標注聯(lián)系的類型(聯(lián)系的類型(1:1、1:n或或m:n)147.2.2 E-R 圖圖u實體型間聯(lián)系實體型間聯(lián)系 n 一對一聯(lián)系(一對一聯(lián)系(1:1) n 一對多聯(lián)系(一對多聯(lián)系(1:n) n多對多聯(lián)

9、系(多對多聯(lián)系(m:n) 15兩個實體型間的聯(lián)系兩個實體型間的聯(lián)系 u一對一聯(lián)系一對一聯(lián)系 n如果對于實體集如果對于實體集A中的每一個實中的每一個實體,實體集體,實體集B中至多有一個實體中至多有一個實體與之聯(lián)系,反之亦然,與之聯(lián)系,反之亦然,則稱實體則稱實體集集A與實體集與實體集B具有一對一聯(lián)系具有一對一聯(lián)系。記為記為1:1。 u 例如,班級與班長之間例如,班級與班長之間班級班級班級班級-班長班長班長班長111:1聯(lián)系聯(lián)系16兩個實體型間的聯(lián)系兩個實體型間的聯(lián)系 (續(xù)續(xù))u一對多聯(lián)系一對多聯(lián)系n如果對于實體集如果對于實體集A中的每一個中的每一個實體,實體集實體,實體集B中有中有n個實體(個實體

10、(n0)與之聯(lián)系,反之,對于)與之聯(lián)系,反之,對于B中的每一個實體,中的每一個實體,A中至多中至多只有一個實體與之聯(lián)系,則稱只有一個實體與之聯(lián)系,則稱實體集實體集A與實體集與實體集B有一對多有一對多聯(lián)系聯(lián)系,記為記為1:nu例如:班級與學生之間例如:班級與學生之間班級班級組成組成學生學生1n1:n聯(lián)系聯(lián)系17兩個實體型間的聯(lián)系兩個實體型間的聯(lián)系 (續(xù)續(xù))u多對多聯(lián)系(多對多聯(lián)系(m:n)n如果對于實體集如果對于實體集A中的每一個實體中的每一個實體,實體集,實體集B中有中有n個實體(個實體(n0)與之聯(lián)系,反之,對于與之聯(lián)系,反之,對于B中的每一中的每一個實體,個實體,A中也有中也有m個實體(個

11、實體(m0)與之聯(lián)系,則稱)與之聯(lián)系,則稱實體集實體集A與實體與實體B具有多對多聯(lián)系。具有多對多聯(lián)系。記為記為m:nu例如,課程與學生之間的聯(lián)系例如,課程與學生之間的聯(lián)系課程課程選修選修學生學生mnm:n聯(lián)系聯(lián)系18注意:注意:u實體之間的聯(lián)系類型并實體之間的聯(lián)系類型并不取決于實體本身,而是不取決于實體本身,而是取決于語義取決于語義u同樣兩個實體,如果有同樣兩個實體,如果有不同的語義則可以得到不不同的語義則可以得到不同的聯(lián)系類型同的聯(lián)系類型倉庫倉庫器件器件倉庫倉庫-器件器件?19討論:倉庫和器件兩個實體之間的關聯(lián)討論:倉庫和器件兩個實體之間的關聯(lián)u如果規(guī)定如果規(guī)定一個倉庫一個倉庫只能存放只能存

12、放一種器件一種器件,并且,并且一種一種器件器件只能存放在只能存放在一個倉庫一個倉庫,倉庫與器件倉庫與器件-1:1u如果規(guī)定如果規(guī)定一個倉庫一個倉庫可以存放可以存放多種器件多種器件,但是,但是一種一種器件器件只能存放在只能存放在一個倉庫一個倉庫,倉庫與器件倉庫與器件-1:nu如果規(guī)定如果規(guī)定一個倉庫一個倉庫可以存放可以存放多種器件多種器件,同時,同時一種一種器件器件可以存放在可以存放在多個倉庫多個倉庫,倉庫與器件倉庫與器件-m:n20多個實體型間的聯(lián)系多個實體型間的聯(lián)系u多個實體之間可以有不同的聯(lián)系多個實體之間可以有不同的聯(lián)系u例如:零件、供應商、倉庫三個實體例如:零件、供應商、倉庫三個實體u三

13、個實體之間的關系如何表達,根據(jù)三個實體之間的關系如何表達,根據(jù)語義語義21兩兩種種聯(lián)聯(lián)系系方方式式的的區(qū)區(qū)別別倉庫倉庫器件器件供應商供應商庫存庫存業(yè)務業(yè)務供應供應倉庫倉庫器件器件供應商供應商訂購訂購22u器件的存放位置與供應商沒有關系器件的存放位置與供應商沒有關系n器件的存放決定于器件的類別,不論是器件的存放決定于器件的類別,不論是哪個供應商提供的器件哪個供應商提供的器件器件器件供應商供應商庫存庫存業(yè)務業(yè)務供應供應倉庫倉庫23u某個供應商提供的某種器件保存在某某個供應商提供的某種器件保存在某個指定的倉庫個指定的倉庫n哪個倉庫存放什么器件需按其供應商區(qū)哪個倉庫存放什么器件需按其供應商區(qū)分分倉庫倉

14、庫器件器件供應商供應商訂購訂購24多個實體型間的聯(lián)系多個實體型間的聯(lián)系u實例實例:課程、教師與參考書課程、教師與參考書n如果一門課程可以有若干個教如果一門課程可以有若干個教師講授,使用若干本參考書,師講授,使用若干本參考書,每一個教師只講授一門課程,每一個教師只講授一門課程,每一本參考書只供一門課程使每一本參考書只供一門課程使用。課程與教師、參考書之間用。課程與教師、參考書之間的聯(lián)系是一對多的的聯(lián)系是一對多的u多個實體型間的一對一聯(lián)系多個實體型間的一對一聯(lián)系u多個實體型間的多對多聯(lián)系多個實體型間的多對多聯(lián)系課程課程講授講授教師教師1m多個實體型的多個實體型的1:n聯(lián)系聯(lián)系參考書參考書n25同一

15、實體集內各實體間的聯(lián)系同一實體集內各實體間的聯(lián)系u一對多聯(lián)系一對多聯(lián)系-實例實例n職工職工實體集內部具有實體集內部具有領導與被領領導與被領導的聯(lián)系導的聯(lián)系:某一職工(干部):某一職工(干部)“領導領導”若干名職工,一個職工僅若干名職工,一個職工僅被另外一個職工直接領導被另外一個職工直接領導n這是一對多的聯(lián)系這是一對多的聯(lián)系u一對一聯(lián)系一對一聯(lián)系u多對多聯(lián)系多對多聯(lián)系職工職工領導領導1n同一實體型內同一實體型內部的部的1:n聯(lián)系聯(lián)系26為什么要討論實體之間的聯(lián)系?為什么要討論實體之間的聯(lián)系?倉庫號城 市面 積WH1北京500WH2上海450WH3廣州200WH4重慶300器 件 號器 件 名 稱

16、P1顯 示 卡P2聲 卡P3解 壓 卡P4散 熱 風 扇如果倉庫和器件之間的聯(lián)如果倉庫和器件之間的聯(lián)系是一對一的:系是一對一的:27倉庫號城市面積器件號器件名稱WH1北京500P1顯示卡倉庫保存器件倉庫保存器件28為什么要討論實體之間的聯(lián)系?為什么要討論實體之間的聯(lián)系?倉庫號城 市面 積WH1北京500WH2上海450WH3廣州200WH4重慶300器件號器件名稱P1顯示卡P2聲卡P3解壓卡P4散熱風扇如果倉庫和器件之間的如果倉庫和器件之間的聯(lián)系是一對多的聯(lián)系是一對多的29為什么要討論實體之間的聯(lián)系?為什么要討論實體之間的聯(lián)系?倉庫號城 市面 積WH1北京500WH2上海450WH3廣州200

17、WH4重慶300器件號器件名稱倉庫號P1顯示卡WH1P2聲卡WH1P3解壓卡Wh230為什么要討論實體之間的聯(lián)系?為什么要討論實體之間的聯(lián)系?倉庫號城 市面 積WH1北京500WH2上海450WH3廣州200WH4重慶300器件號器件名稱P1顯示卡P2聲卡P3解壓卡P4散熱風扇如果倉庫和器件之間的如果倉庫和器件之間的聯(lián)系是多對多的聯(lián)系是多對多的31聯(lián)系的屬性聯(lián)系的屬性u聯(lián)系本身也是一種聯(lián)系本身也是一種實體型,也可以有屬實體型,也可以有屬性性u如果一個聯(lián)系具有如果一個聯(lián)系具有屬性,則這些屬性也屬性,則這些屬性也要用無向邊與該聯(lián)系要用無向邊與該聯(lián)系連接起來連接起來 課程課程選修選修學生學生mn成績

18、成績32聯(lián)系的表示方法(小結)聯(lián)系的表示方法(小結)實體型實體型1聯(lián)系名聯(lián)系名實體型實體型2111:1聯(lián)系聯(lián)系實體型實體型1聯(lián)系名聯(lián)系名實體型實體型2mnm:n聯(lián)系聯(lián)系實體型實體型1聯(lián)系名聯(lián)系名實體型實體型21n1:n聯(lián)系聯(lián)系33聯(lián)系的表示方法(小結)聯(lián)系的表示方法(小結)實體型實體型1聯(lián)系名聯(lián)系名mn同一實體型內同一實體型內部的部的m:n聯(lián)系聯(lián)系實體型實體型1聯(lián)系名聯(lián)系名實體型實體型21m多個實體型間的多個實體型間的1:n聯(lián)系聯(lián)系實體型實體型3n7.2.3 ER模型的設計方法模型的設計方法 u 在設計在設計ER模型時模型時,首先必須根據(jù)需首先必須根據(jù)需求分析求分析,確認實體集、確認實體集、

19、聯(lián)系集和屬性。聯(lián)系集和屬性。 一個企業(yè)(單位)有許多部門一個企業(yè)(單位)有許多部門,就會有就會有各種業(yè)務應用的要求各種業(yè)務應用的要求,需求說明來自對需求說明來自對它們的調查和分析它們的調查和分析u 有關需求分析的方法將在第有關需求分析的方法將在第 8 章中介章中介紹紹,這里只介紹這里只介紹ER模型的設計方法。模型的設計方法。 34u ER模型的三條設計原則:模型的三條設計原則: u(1) 相對原則:相對原則:關系、關系、 實體、實體、 屬性、屬性、 聯(lián)系等聯(lián)系等,是對是對同一對象抽象過程的不同解釋和理解。同一對象抽象過程的不同解釋和理解。 即建模過程即建模過程實際上是一個對對象的抽象過程實際上

20、是一個對對象的抽象過程,不同的人或同一人不同的人或同一人在不同的情況下在不同的情況下,抽象的結果可能不同。抽象的結果可能不同。 u(2) 一致原則:一致原則:同一對象在不同的業(yè)務系統(tǒng)中的抽同一對象在不同的業(yè)務系統(tǒng)中的抽象結果要求保持一致。業(yè)務系統(tǒng)是指建立系統(tǒng)的各象結果要求保持一致。業(yè)務系統(tǒng)是指建立系統(tǒng)的各子系統(tǒng)。子系統(tǒng)。 u(3) 簡單原則:簡單原則:為簡化為簡化ER模型模型,現(xiàn)實世界的事物現(xiàn)實世界的事物能作為屬性對待的能作為屬性對待的,盡量歸為屬性處理。盡量歸為屬性處理。 ERER模型的設計方法模型的設計方法35u 屬性和實體間并無一定的界限。屬性和實體間并無一定的界限。 如果一個如果一個事

21、物滿足以下兩個條件之一的事物滿足以下兩個條件之一的,一般可作為屬一般可作為屬性對待:性對待: u 屬性不再具有需要描述的性質。屬性不再具有需要描述的性質。 屬性在屬性在含義上是不可分的數(shù)據(jù)項。含義上是不可分的數(shù)據(jù)項。 u 屬性不能再與其他實體集具有聯(lián)系屬性不能再與其他實體集具有聯(lián)系,即即ER模型指定聯(lián)系只能是實體集間的聯(lián)系模型指定聯(lián)系只能是實體集間的聯(lián)系ER模型的設計方法模型的設計方法36圖 7 1 工資由屬性變?yōu)閷嶓w集 職工姓名性別年齡職稱職工號姓名性別年齡職稱職工號工資工資工資號基本工資補貼失業(yè)險職工擁有11ER模型的設計方法模型的設計方法37u 倉庫和貨物的關系倉庫和貨物的關系u 如果一

22、種貨物只存放在一個倉庫中如果一種貨物只存放在一個倉庫中,那么那么倉庫可作為貨物的屬性倉庫可作為貨物的屬性u如果倉庫與職工發(fā)生聯(lián)系(每個倉庫有如果倉庫與職工發(fā)生聯(lián)系(每個倉庫有若干個保管員)若干個保管員),那么倉庫就應該作為一那么倉庫就應該作為一個實體集個實體集ERER模型的設計方法模型的設計方法38圖 倉庫由屬性變?yōu)閷嶓w集 貨號貨物貨號名稱貨物名稱倉庫號存量存放職工職工號姓名年齡管理倉庫號面積存量倉庫mn1nER模型的設計方法模型的設計方法39分析一個分析一個ER圖的實例圖的實例407.2.3 ER模型的設計方法模型的設計方法u 系統(tǒng)系統(tǒng)功能圍繞系統(tǒng)系統(tǒng)功能圍繞“訂單訂單”和和“應收賬應收賬款

23、款”的處理的處理u(1)每張訂單由訂單號、若干頭信息和)每張訂單由訂單號、若干頭信息和訂單細節(jié)組成。訂單細節(jié)又有訂貨的零訂單細節(jié)組成。訂單細節(jié)又有訂貨的零件號、數(shù)量等來描述。按照屬性與實體件號、數(shù)量等來描述。按照屬性與實體的劃分原則,訂單細節(jié)不能作訂單的屬的劃分原則,訂單細節(jié)不能作訂單的屬性處理,而應該作為實體性處理,而應該作為實體u(2)一張訂單可以訂若干產品,所以訂)一張訂單可以訂若干產品,所以訂單與訂單細節(jié)兩個實體之間是單與訂單細節(jié)兩個實體之間是1 n的聯(lián)的聯(lián)系。系。41u(3)原訂單和產品的聯(lián)系實際上是訂單細)原訂單和產品的聯(lián)系實際上是訂單細節(jié)和產品的聯(lián)系。每條訂貨細節(jié)對應一個產節(jié)和產

24、品的聯(lián)系。每條訂貨細節(jié)對應一個產品描述,訂單處理時從中獲得當前單價、產品描述,訂單處理時從中獲得當前單價、產品重量等信息。品重量等信息。u(4)工廠對大宗訂貨給予優(yōu)惠。每種產品)工廠對大宗訂貨給予優(yōu)惠。每種產品都規(guī)定了不同訂貨數(shù)量的折扣,應增加一個都規(guī)定了不同訂貨數(shù)量的折扣,應增加一個“折扣規(guī)則折扣規(guī)則”實體存放這些信息,而不應把實體存放這些信息,而不應把它們放在產品描述實體中它們放在產品描述實體中7.2.3 ER模型的設計方法模型的設計方法42u一些工具可以輔助設計一些工具可以輔助設計ER圖圖uPowerDesigneruERWinuUML437.4 設計關系模式的工具設計關系模式的工具uP

25、owerDesigner是功能強大、使用簡單的工具是功能強大、使用簡單的工具集,提供交互環(huán)境,支持開發(fā)生命周期的所有階段集,提供交互環(huán)境,支持開發(fā)生命周期的所有階段,從處理流程建模到對象和組件的生成,從處理流程建模到對象和組件的生成uPowerDesigner產生的模型和應用可以不斷地產生的模型和應用可以不斷地增長,適應并隨組織的變化而變化增長,適應并隨組織的變化而變化uPowerDesigner系列產品提供了一個完整的建系列產品提供了一個完整的建模解決方案,對其裁剪以滿足特定的需要;模塊化模解決方案,對其裁剪以滿足特定的需要;模塊化的結構為擴展提供了極大的靈活性,從而可以根據(jù)的結構為擴展提供了極大的靈活性,從而可以根據(jù)其項目的規(guī)模和范圍來使用所需要的工具其項目的規(guī)模和范

溫馨提示

  • 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

提交評論