數(shù)據(jù)模型與概念模型課件_第1頁
數(shù)據(jù)模型與概念模型課件_第2頁
數(shù)據(jù)模型與概念模型課件_第3頁
數(shù)據(jù)模型與概念模型課件_第4頁
數(shù)據(jù)模型與概念模型課件_第5頁
已閱讀5頁,還剩139頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第2章數(shù)據(jù)模型與概念模型2.1信息的三種世界及其描述

2.2概念模型及其表示2.2.1概念模型的基本概念

2.2.2概念模型的表示方法2.3常見的三種數(shù)據(jù)模型2.3.1數(shù)據(jù)模型概述2.3.2層次模型及特點

2.3.3網(wǎng)狀模型及特點

2.3.4關(guān)系模型概述

第2章數(shù)據(jù)模型與概念模型2.1信息的三種世界及其描述2.1信息的三種世界及其描述1.信息的現(xiàn)實世界

我們要管理的客觀存在的各種事物、事務(wù)之間的相互聯(lián)系及事物的發(fā)生、變化過程。

(1)實體(Entity)

現(xiàn)實世界中存在的可以相互區(qū)分的事物或概念稱為實體。

(2)實體的特征(EntityCharacteristic)

每個實體都有自己的特征,利用實體的特征可以區(qū)別不同的實體。

(3)實體集及實體集間的聯(lián)系(Relation)

具有相同特征或能用同樣特征描述的實體的集合。2.1信息的三種世界及其描述1.信息的現(xiàn)實世界2.信息世界

在信息世界中:實體的特征在頭腦中形成的知識稱為屬性;實體通過其屬性表示稱為實例;同類實例的集合稱為對象,對象即實體集中的實體用屬性表示得出的信息集合;實體集之間的聯(lián)系用對象聯(lián)系表示。信息世界通過概念模型、過程模型和狀態(tài)模型反映現(xiàn)實世界,它要求對現(xiàn)實世界中的事物、事物間的聯(lián)系和事物的變化情況準(zhǔn)確、如實、全面地表示。2.信息世界在信息世界中:實體的特征在頭腦中形成的知3.信息的計算機(jī)世界1)數(shù)據(jù)項(Item):對象屬性的數(shù)據(jù)表示。

2)記錄(Record):實例的數(shù)據(jù)表示。記錄有型和值之分:記錄的型是結(jié)構(gòu),由數(shù)據(jù)項的型構(gòu)成;記錄的值表示對象中的一個實例,它的分量是數(shù)據(jù)項值。

3)文件(File):對象的數(shù)據(jù)表示,同類記錄的集合。

4)數(shù)據(jù)模型(DataModel):現(xiàn)實世界中的事物和相互聯(lián)系數(shù)據(jù)化的結(jié)果就是數(shù)據(jù)模型。3.信息的計算機(jī)世界1)數(shù)據(jù)項(Item):對象屬性的數(shù)4.現(xiàn)實世界、信息世界和計算機(jī)世界的關(guān)系信息的三種世界術(shù)語的對應(yīng)關(guān)系表現(xiàn)實世界信息世界

計算機(jī)世界

實體

實例

記錄

特征

屬性

數(shù)據(jù)項

實體集

對象或?qū)嶓w型

數(shù)據(jù)或文件

實體間的聯(lián)系對象間的聯(lián)系

數(shù)據(jù)間的聯(lián)系

概念模型數(shù)據(jù)模型

4.現(xiàn)實世界、信息世界和計算機(jī)世界的關(guān)系信息的三種世界術(shù)語現(xiàn)實世界、信息世界和計算機(jī)世界的關(guān)系信息的三個世界的聯(lián)系和轉(zhuǎn)換過程

現(xiàn)實世界系統(tǒng)分析信息世界數(shù)據(jù)庫設(shè)計計算機(jī)世界

事物及聯(lián)系信息化信息模型數(shù)據(jù)化數(shù)據(jù)模型現(xiàn)實世界、信息世界和計算機(jī)世界的關(guān)系信息的三個世界的聯(lián)系和轉(zhuǎn)??模型一張地圖,一個汽車模型,一個精致的航模飛機(jī)以及一組建筑設(shè)計沙盤都是具體的模型。所以,對于模型,一眼望去,就會使人聯(lián)想到真實生活中的事物。模型是對現(xiàn)實世界的模擬和抽象。數(shù)據(jù)模型是現(xiàn)實世界中數(shù)據(jù)特征的抽象。??模型一張地圖,一個汽車模型,一個精致的航模飛機(jī)以及一組建2.2概念模型及其表示2.2.1概念模型的基本概念

1.概念模型涉及的基本概念

(1)對象(Object)和實例(Instance)

現(xiàn)實世界中具有相同性質(zhì)、服從相同規(guī)則的一類事物(概念)的抽象稱為對象。對象中的每一個具體的事物(實體)為該對象的實例。

(2)屬性(Attribute)

屬性為實體的某一方面特征的抽象表示。

(3)主碼(PrimaryKey)和次碼(SecondaryKey)

碼能夠惟一標(biāo)識一個實體;不能惟一標(biāo)識實體的屬性叫次碼。

(4)域(Domain)

屬性的取值范圍稱為屬性的域。

概念模型是對信息世界的管理對象、屬性及聯(lián)系等信息的描述形式。概念模型不依賴計算機(jī)及DBMS,它是現(xiàn)實世界的真實全面反映。2.2概念模型及其表示2.2.1概念模型的基本概念

2.實體聯(lián)系的類型(1)兩個實體集之間的聯(lián)系

1)一對一聯(lián)系(1:1):設(shè)有兩個實體集A和B,對于A中的每一個實體,B中至多有一個實體與之聯(lián)系;反之亦然。

2)一對多聯(lián)系(1:n):設(shè)有兩個實體集A和B,對于A的每一個實體,B中有一個或多個實體與之聯(lián)系;而對于B的每一個實體,A中至多有一個實體與之聯(lián)系。

3)多對多聯(lián)系(m:n):設(shè)有兩個實體集A和B,對于A的每一個實體,B中有一個或多個實體與之聯(lián)系;反之亦然。2.實體聯(lián)系的類型(1)兩個實體集之間的聯(lián)系

1)一對兩個實體集之間的聯(lián)系工廠

負(fù)責(zé)廠長11學(xué)校

工作教師1n職工

參加體育團(tuán)體mn兩個實體集聯(lián)系的例子兩個實體集之間的聯(lián)系工廠負(fù)責(zé)廠長11學(xué)校工作教師1n職工廠長姓名年齡性別工廠入廠時間管理11廠名廠齡地址廠長姓名年齡性別工廠入廠時間管理11廠名廠齡地址班級班級名稱班級號人數(shù)學(xué)生班主任包括1N學(xué)號姓名性別班級班級名稱班級號人數(shù)學(xué)生班主任包括1N學(xué)號姓名性別學(xué)生學(xué)號姓名性別課程專業(yè)選修MN課程號課程名學(xué)分學(xué)生學(xué)號姓名性別課程專業(yè)選修MN課程號課程名學(xué)分(2)多實體集之間的聯(lián)系1)多實體集之間的一對多聯(lián)系。

設(shè)實體集E1,…En,對于實體集Ej(j=1,…n)中的一個給定實體,最多只和其他實體集Ei(ij)中的一個實體相聯(lián)系,則稱Ej與E1…,En之間的聯(lián)系是一對多的。

2)多實體集之間的多對多聯(lián)系。

在兩個以上的多個實體集之間,當(dāng)一個實體集與其他實體集之間均存在多對多聯(lián)系,而其他實體集之間沒有聯(lián)系時,這種聯(lián)系稱為多實體集間的多對多聯(lián)系。課程講授教師參考書1nm供應(yīng)商供應(yīng)項目零件mpn(2)多實體集之間的聯(lián)系1)多實體集之間的一對多聯(lián)系。課(3)單個實體型內(nèi)的聯(lián)系同一個實體型內(nèi)的各實體之間也可以存在一對一,一對多,多對多的聯(lián)系。職工領(lǐng)導(dǎo)1n單個實體型內(nèi)部1:n聯(lián)系實體型1聯(lián)系名mn單個實體型內(nèi)的m:n聯(lián)系(3)單個實體型內(nèi)的聯(lián)系同一個實體型內(nèi)的各實體之間也可以存在2.2.2概念模型的表示方法目前描述概念模型最常用的方法是實體-聯(lián)系(Entity-Relationship)方法,即E-R方法,使用的工具稱為E-R圖。E-R圖所描述的現(xiàn)實世界的信息結(jié)構(gòu)稱為實體-聯(lián)系模型(E-R模型)。1)用長方形表示實體集,長方形內(nèi)寫明實體集名。2)用橢圓形表示實體集的屬性,并用線段將其與相應(yīng)的實體集連接起來。3)用菱形表示實體集間的聯(lián)系,菱形內(nèi)寫上聯(lián)系名,用線段分別與有關(guān)實體集連接起來,在線段旁標(biāo)出聯(lián)系的類型。如果聯(lián)系具有屬性,則該屬性仍用橢圓框表示,仍需要用線段將屬性與其聯(lián)系連接起來。學(xué)生學(xué)號姓名性別年齡所在系2.2.2概念模型的表示方法目前描述概念模型最常用的方法練習(xí)1為某百貨公司設(shè)計一個ER模型。

百貨管轄若干個連鎖商店,每家商店經(jīng)營若干商品,每家商店有若干職工,但每個職工只能服務(wù)于一家商店。實體類型“商店”的屬性有:商店編號,店名,店址,店經(jīng)理。實體類型“商品”的屬性有:商品編號,商品名,單價,產(chǎn)地。實體類型“職工”的屬性有:職工編號,職工名,性別,工資。在聯(lián)系中應(yīng)反映出職工參加某商店工作的開始時間,商店銷售商品的月銷售量。試畫出反映商店、商品、職工實體類型及聯(lián)系類型的ER圖,并將其轉(zhuǎn)換成關(guān)系模式集。

練習(xí)1為某百貨公司設(shè)計一個ER模型。

百貨管轄若干個連鎖商實體:商店(商店編號,店名,店址,店經(jīng)理)

商品(商品編號,商品名,單價,產(chǎn)地)

職工(職工編號,職工名,性別,工資)

聯(lián)系:SC(商店—商品之間1:N的聯(lián)系,

聯(lián)系屬性為“職工參加商店工作的開始時間”。

SE(商店—職工之間1:N的聯(lián)系),

聯(lián)系屬性為“月銷售量”。實體:商店(商店編號,店名,店址,店經(jīng)理)

商品(商數(shù)據(jù)模型與概念模型課件練習(xí)2:圖書借閱系統(tǒng)中實體與實體集屬性的描述練習(xí)2:圖書借閱系統(tǒng)中實體與實體集屬性的描述練習(xí)4:學(xué)校教學(xué)管理的E-R模型學(xué)校有若干個系,每個系有各自的系號、系名和系主任;每個系有若干名教師和學(xué)生,教師有教師號、教師名和職稱屬性,每個教師可以擔(dān)任若干門課程,一門課程只能由一位教師講授,課程有課程號、課程名和學(xué)分,并參加多項項目,一個項目有多人合作,且責(zé)任輕重有個排名,項目有項目號、名稱和負(fù)責(zé)人;學(xué)生有學(xué)號、姓名、年齡、性別,每個學(xué)生可以同時選修多門課程,選修有分?jǐn)?shù)。(5分)請設(shè)計此學(xué)校的教學(xué)管理的E-R模型。練習(xí)4:學(xué)校教學(xué)管理的E-R模型學(xué)校有若干個系,每個數(shù)據(jù)模型與概念模型課件數(shù)據(jù)模型與概念模型課件例題5:用E-R圖表示某個工廠物資管理的概念模型實體倉庫:倉庫號、面積、電話號碼零件:零件號、名稱、規(guī)格、單價、描述供應(yīng)商:供應(yīng)商號、姓名、地址、電話號碼、帳號項目:項目號、預(yù)算、開工日期職工:職工號、姓名、年齡、職稱例題5:用E-R圖表示某個工廠物資管理的概念模型實體之間的聯(lián)系如下:

(1)一個倉庫可以存放多種零件,一種零件可以存放在多個倉庫中。倉庫和零件具有多對多的聯(lián)系。用庫存量來表示某種零件在某個倉庫中的數(shù)量。(2)一個倉庫有多個職工當(dāng)倉庫保管員,一個職工只能在一個倉庫工作,倉庫和職工之間是一對多的聯(lián)系。職工實體型中具有一對多的聯(lián)系(3)職工之間具有領(lǐng)導(dǎo)-被領(lǐng)導(dǎo)關(guān)系。即倉庫主任領(lǐng)導(dǎo)若干保管員。(4)供應(yīng)商、項目和零件三者之間具有多對多的聯(lián)系實體之間的聯(lián)系如下:數(shù)據(jù)模型與概念模型課件例

6

電影數(shù)據(jù)庫的實體和聯(lián)系

表示一個簡單的電影數(shù)據(jù)庫。實體集是Movies、Stars和Studios。

Movies實體集有4個屬性:title、year、length和filmType。另外兩個實體集Stars和Studios正好有兩個相同的屬性:name和address。圖中還有兩個聯(lián)系:

Stars-in是電影及其影星的聯(lián)系。這也是影星與其參演電影的聯(lián)系。

Owns是電影及其所屬電影公司的聯(lián)系。指向?qū)嶓w集Studios的箭頭表示每部電影只屬于惟一的電影公司。

6

電影數(shù)據(jù)庫的實體和聯(lián)系

表示一個簡單的電影數(shù)據(jù)庫。三路聯(lián)系

是一個三路聯(lián)系,包括電影公司、影星和電影三個實體集。這種聯(lián)系表明電影公司和某一影星簽約,讓他(或她)出演一部電影。在多路聯(lián)系中,指向?qū)嶓w集E的箭頭表示:如果從此聯(lián)系中除E之外的其他每個實體集選擇一個實體,它們至多與E中的一個實體有聯(lián)系。在圖中,有一個箭頭指向Studios,表明對于某一影星和電影來說,只有一家電影公司與這位影星簽訂了出演此電影的合同。

三路聯(lián)系

是一個三路聯(lián)系,包括電影公司、影星和電影三個聯(lián)系中的角色

在一個聯(lián)系中一個實體集可能出現(xiàn)兩次或多次。如果是這樣,則根據(jù)實體集在聯(lián)系中出現(xiàn)的次數(shù),把聯(lián)系與實體集用同樣多的連線連接起來。每一條連向?qū)嶓w集的連線代表實體集在聯(lián)系中扮演的不同角色(role)。因而,人們給實體集和聯(lián)系之間的線命名,稱之為“角色”。

帶有角色的聯(lián)系

2.5給出了一個實體集Movies和一個由它本身組成的聯(lián)系Sequel-of。每個聯(lián)系連接兩部電影,其中一部是另一部的續(xù)集,為了在一種聯(lián)系中區(qū)別兩部電影,一條線標(biāo)以O(shè)riginal,另一條線標(biāo)以Sequel,分別代表最初的電影和續(xù)集。假設(shè)一部電影有許多部續(xù)集,但對于每部續(xù)集來說只存在一部最初的電影。所以Sequel電影與Original電影之間是多對一聯(lián)系。聯(lián)系中的角色

在一個聯(lián)系中一個實體集可能出現(xiàn)兩次或多次。如果一個有屬性的聯(lián)系

一個有屬性的聯(lián)系

例7:運動會例7:運動會數(shù)據(jù)模型與概念模型課件例8:電腦銷售公司一家電腦銷售公司,銷售整機(jī),外設(shè)和零部件。該公司有三個部門:市場部技術(shù)部財務(wù)部。市場部有18位業(yè)務(wù)員,負(fù)責(zé)采購和銷售業(yè)務(wù);技術(shù)部有14位工程師,負(fù)責(zé)售后服務(wù)保修等技術(shù)性的工作;財務(wù)部有12位工作人員一位會計一位出納負(fù)責(zé)財務(wù)工作。公司需要將所經(jīng)營的計算機(jī)設(shè)備的庫存客戶銷售保修職工等信息都保存在數(shù)據(jù)庫中。設(shè)計一個數(shù)據(jù)庫(自定義實體3個以上屬性)。例8:電腦銷售公司一家電腦銷售公司,銷售整機(jī),外設(shè)和零部件。例9:先局部例9:先局部(6)ER優(yōu)化例子項目=產(chǎn)品職工與倉庫的聯(lián)系冗余職工與職工的領(lǐng)導(dǎo)聯(lián)系冗余(6)ER優(yōu)化例子項目=產(chǎn)品35數(shù)據(jù)模型與概念模型課件ER圖的規(guī)劃方法

將所得到的屬性分門歸類,利用以前講述的幾條簡單準(zhǔn)則即可將其并入實體或者聯(lián)系。

按照的準(zhǔn)則主要有兩個:

1)屬性如果不能具有獨立存在的意義,則不能成為一個新建立實體。

2)屬性歸入一個實體的依據(jù)是對實體的每個實例而言具有唯一值。ER圖的規(guī)劃方法

將所得到的屬性分門歸類,利用以前講數(shù)據(jù)模型與概念模型課件相應(yīng)的ER圖結(jié)構(gòu)可以描述為:

合同(合同號,訂貨日期,廠商名稱,廠商地址)

貨物(貨物編號,貨物分類)

合同貨物(合同號,貨物編號,訂貨數(shù)量)

相應(yīng)的ER圖結(jié)構(gòu)可以描述為:

合同(合同號,訂貨日期除此以外,還有一種方法,將廠商視為實體,相應(yīng)的ER圖結(jié)構(gòu)可以描述為:

合同(合同號,訂貨日期,廠商號)

貨物(貨物編號,貨物分類)

廠商(廠商號,廠商名稱,廠商地址)

合同貨物(合同號,貨物編號,訂貨數(shù)量)

除此以外,還有一種方法,將廠商視為實體,相應(yīng)的ER圖結(jié)構(gòu)可以兩種方法的比較:

1)第一種方法存在冗余(相同的廠商具有相同的地址),但是實體少,處理簡單,以后利用范式分析方法可以得到標(biāo)準(zhǔn)結(jié)構(gòu)。所以,實體能少則少。

2)第二種方法需要考察廠商實體與合同、貨物的關(guān)系,發(fā)現(xiàn)與合同存在一對多的關(guān)系,但與貨物存在多對多的關(guān)系,明顯增加處理的復(fù)雜度。事實上,可以考慮去除廠商與貨物的關(guān)系(可以從剩下的關(guān)系中推斷出來,但是其他的關(guān)系不能省略)。兩種方法的比較:

1)第一種方法存在冗余(相同的廠商數(shù)據(jù)模型與概念模型課件4、ER模型的擴(kuò)展弱實體子類(特殊化)與超類(一般化)4、ER模型的擴(kuò)展弱實體(1)弱實體(weakentity)一個弱實體的存在必須以另一實體的存在為前提弱實體所依賴存在的實體稱為常規(guī)實體(regularentity)或強(qiáng)實體(strongentity)弱實體有自己的標(biāo)識,但它的標(biāo)識只保證對于所依賴的強(qiáng)實體而言是唯一的。在整個系統(tǒng)中沒有自己唯一的實體標(biāo)識弱實體的例子一個公司的人事系統(tǒng)中,既需要管理職工實體,也需要管理職工的子女。則子女在人事系統(tǒng)中存在的前提就是他們的父母首先存在于人事系統(tǒng)中子女是弱實體,職工是強(qiáng)實體是否弱實體要看具體應(yīng)用:例如在社區(qū)人口管理系統(tǒng)中,子女就不是弱實體,即使雙親都不存在了,子女仍應(yīng)存在于人口系統(tǒng)中(1)弱實體(weakentity)一個弱實體的存在必須以(2)弱實體的表示弱實體用雙線矩形表示,存在依賴聯(lián)系用雙線菱形表示,箭頭指向強(qiáng)實體子女撫養(yǎng)職工1N(2)弱實體的表示弱實體用雙線矩形表示,存在依賴聯(lián)系用雙線菱例

弱實體集的來源

一個電影公司可能有幾套拍攝班子(或稱為工作室)。這些拍攝班子可能被一家電影公司指定為crew1、crew2等等??墒牵渌娪肮疽部赡苡孟嗤木幪?,于是,number屬性不能成為拍攝班子的鍵。為了惟一地命名一套拍攝班子,需要同時給出它所屬電影公司的名字和它本身的編號。圖

顯示了這種情況。弱實體集Crews的鍵是它自己的number屬性和Studios的name屬性,Crews和Studios通過多對一聯(lián)系Unit-of相連接。例

弱實體集的來源

一個電影公司可能有幾套拍攝班子(或稱為

弱實體集的要求如果E是弱實體集,則它的鍵組成包括:若干個它自己的屬性(也可以沒有);通過某些多對一聯(lián)系從E到達(dá)其他實體集的鍵。這些多對一聯(lián)系稱為E的支持聯(lián)系(supportingrelationship)。為了使從E到某個實體集F的多對一聯(lián)系R成為E的一個支持聯(lián)系,必須具備下面的條件:R必須是從E到F的二元的多對一聯(lián)系[2];R必須有從E到F的引用完整性。也就是說,對于每個E實體,經(jīng)R與它相聯(lián)系的F實體都必須存在于實際數(shù)據(jù)庫中。換言之,必須有一個從R到F的圓箭頭。F提供給E作鍵的屬性必須是F的鍵屬性;如果F本身就是弱實體集,那么F提供給E的部分或全部鍵屬性是F由支持聯(lián)系連接的一個或多個實體集G的鍵屬性。同樣的,如果G是弱實體集,則G的某些鍵屬性又將由另一個實體集提供,如此繼續(xù)下去。

弱實體集的要求如果E是弱實體集,則它的鍵組成包括:弱實體集的符號用下面的約定來描述一個實體集是弱實體集,并且聲明它的鍵屬性。如果一個實體集是弱實體集,它就被顯示為雙邊的矩形。例如,圖

2.10中的Crews。它的多對一支持聯(lián)系被顯示為雙邊的菱形,例如,圖

2.10中的Unit-of。如果一個實體集提供了構(gòu)成它自己鍵的屬性,則那些屬性帶有下劃線。例如,圖

2.10中,拍攝班子的編號雖然不是Crews鍵的全部,但是它是其自身的鍵的一部分。

這些約定可以被概括為:無論何時用到,但凡實體集E有雙邊,它就是弱實體集。E中帶下劃線的屬性(如果有的話),再加上E被雙邊的多對一聯(lián)系指向的實體集的鍵屬性,必定對E的實體是惟一的。另外,雙邊的菱形只用于支持聯(lián)系,從弱實體集引出的多對一聯(lián)系有可能不是支持聯(lián)系,因此也就不是雙邊的菱形。弱實體集的符號用下面的約定來描述一個實體集是弱實體集,并且(3)子類(特殊化)與超類(一般化)子類(Subtype)和超類(Supertype)兩個實體A和B并不相同,但實體A屬于實體B,則A稱為實體子類,B稱為實體超類子類是超類的特殊化,超類是子類的一般化子類繼承了超類的全部屬性,因此子類的標(biāo)識就是超類的標(biāo)識(3)子類(特殊化)與超類(一般化)子類(Subtype)和如學(xué)生實體中包含本科生,研究生,大專三個子類,而學(xué)生實體就稱為超類.經(jīng)理是職工的子類如職工實體可以分成機(jī)修工,裝配工,冷作工,負(fù)責(zé)人等在ER設(shè)計時,可以根據(jù)實際情況增加子類,也可以根據(jù)若干實體抽象出超類如學(xué)生實體中包含本科生,研究生,大專三個子類,而學(xué)生實體就稱(4)子類符號ISA表示子類與超類關(guān)系領(lǐng)導(dǎo)ISA職工會員ISA高級會員注冊會員正式會員(4)子類符號ISA表示子類與超類關(guān)系領(lǐng)導(dǎo)ISA職工會員IS(5)子類例子(5)子類例子2.3

常見的三種數(shù)據(jù)模型2.3.1數(shù)據(jù)模型概述

1.數(shù)據(jù)模型的三要素

1)數(shù)據(jù)結(jié)構(gòu):所研究的對象類型的集合。包括與數(shù)據(jù)類型、內(nèi)容、性質(zhì)有關(guān)的對象;與數(shù)據(jù)之間聯(lián)系有關(guān)的對象。

2)數(shù)據(jù)操作:對數(shù)據(jù)庫中各種數(shù)據(jù)對象允許執(zhí)行的操作集合。包括操作對象和有關(guān)的操作規(guī)則兩部分。

3)數(shù)據(jù)約束條件:一組數(shù)據(jù)完整性規(guī)則的集合。

2.3常見的三種數(shù)據(jù)模型2.3.1數(shù)據(jù)模型概述

1.2.3

常見的三種數(shù)據(jù)模型

2.常見的數(shù)據(jù)模型

層次模型、網(wǎng)狀模型和關(guān)系模型。

在非關(guān)系模型中,實體集用記錄表示,實體的屬性對應(yīng)記錄的數(shù)據(jù)項(或字段)。實體集之間的聯(lián)系轉(zhuǎn)換成兩兩記錄之間的聯(lián)系。非關(guān)系模型中數(shù)據(jù)結(jié)構(gòu)的單位是基本層次聯(lián)系。RiRjLij2.3常見的三種數(shù)據(jù)模型

2.常見的數(shù)據(jù)模型

層次模型第一代:層次數(shù)據(jù)庫/網(wǎng)狀數(shù)據(jù)庫1969年IBM公司的IMS層次數(shù)據(jù)庫1970年CODASYL的DBTG網(wǎng)狀數(shù)據(jù)庫第二代:關(guān)系數(shù)據(jù)庫關(guān)系理論:70年CODD關(guān)系理論商品化的RDBMS:80年代成為主流DBMS第三代:對象-關(guān)系數(shù)據(jù)庫90年代OODBMS:支持?jǐn)?shù)據(jù)管理、對象管理、知識管理90年代ORDBMS:保持和繼承第二代數(shù)據(jù)庫系統(tǒng)技術(shù)各種標(biāo)準(zhǔn):SQL3、ODBC、JDBC、SQLJ第一代:層次數(shù)據(jù)庫/網(wǎng)狀數(shù)據(jù)庫2.3.2層次模型及特點1.層次模型的數(shù)據(jù)結(jié)構(gòu)

(1)層次模型的定義

1)有且僅有一個結(jié)點沒有雙親結(jié)點,這個結(jié)點稱為根結(jié)點。

2)除根結(jié)點之外的其他結(jié)點有且只有一個雙親結(jié)點。

(2)層次模型的數(shù)據(jù)表示方法

實體集使用記錄表示;記錄型包含若干個字段;記錄值表示實體;記錄之間的聯(lián)系使用基本層次聯(lián)系表示。

(3)層次模型的特點

層次模型像一棵倒立的樹,只有一個根結(jié)點,有若干個葉結(jié)點,結(jié)點的雙親是惟一的。

2.3.2層次模型及特點1.層次模型的數(shù)據(jù)結(jié)構(gòu)

(1)院系編號院系名稱辦公地點教研室編號教研室學(xué)號姓名年齡專業(yè)方向職工號姓名教學(xué)院系數(shù)據(jù)模型院系教研室學(xué)生教師D10計算機(jī)系9號樓C01硬件教研室C02軟件教研室00001王平2000002李麗20電器92001王海自動化92002張錚數(shù)據(jù)庫92003許明人工智能92004陳真教學(xué)院系數(shù)據(jù)庫的一個實例院系編號院系名稱辦公地點教研室編號教研室學(xué)號姓名年齡專業(yè)方向2.層次模型的完整性約束條件在進(jìn)行插入記錄值操作時,如果沒有指明相應(yīng)的雙親記錄值(首記錄值),則不能插入子女記錄值(屬記錄值)。(2)進(jìn)行刪除記錄操作時,如果刪除雙親記錄值(首記錄值),則相應(yīng)的子女結(jié)點值(屬記錄值)也同時被刪除。(3)進(jìn)行修改記錄操作時,應(yīng)修改所有相應(yīng)記錄,以保證數(shù)據(jù)的一致性。

2.層次模型的完整性約束條件在進(jìn)行插入記錄值操作時,如果沒3層次模型的優(yōu)缺點優(yōu)點:結(jié)構(gòu)簡單,易于實現(xiàn);查詢效率高。缺點: 不能表示兩個以上實體型之間的復(fù)雜聯(lián)系和實體型之間的多對多的聯(lián)系;數(shù)據(jù)操縱不方便。子結(jié)點的存取只能通過父結(jié)點來進(jìn)行。插入、刪除復(fù)雜,父結(jié)點的刪除導(dǎo)致子結(jié)點的刪除,丟失必要的信息。3層次模型的優(yōu)缺點優(yōu)點:結(jié)構(gòu)簡單,易于實現(xiàn);查詢效率高。網(wǎng)狀模型與層次模型的最大區(qū)別在于兩個結(jié)點之間的聯(lián)系可以不唯一,因此要為每個聯(lián)系命名。網(wǎng)狀數(shù)據(jù)模型的典型代表是DBTG系統(tǒng),由美國數(shù)據(jù)系統(tǒng)研究會CODASYL下屬的一個數(shù)據(jù)庫任務(wù)組DBTG提出(DataBaseTaskGroup),對網(wǎng)狀數(shù)據(jù)庫的開發(fā)和發(fā)展起了重大影響。2.3.3網(wǎng)狀模型及特點網(wǎng)狀模型與層次模型的最大區(qū)別在于兩個結(jié)點之間的聯(lián)系可以不唯一1.網(wǎng)狀模型的數(shù)據(jù)結(jié)構(gòu)

(1)網(wǎng)狀模型結(jié)構(gòu)的基本特征

1)有一個以上的結(jié)點沒有雙親。

2)結(jié)點可以有多于一個的雙親。(2)網(wǎng)狀模型的數(shù)據(jù)表示方法1)使用記錄和記錄值表示實體集和實體;每個結(jié)點表示一個記錄,每個記錄包含若干個字段。

2)聯(lián)系(系)用結(jié)點間的有向線段表示。每個有向線段表示一個記錄間的一對多的聯(lián)系。

R1R2R1R2R3R4R1R3R2

L1L2L1L2L1L2L31.網(wǎng)狀模型的數(shù)據(jù)結(jié)構(gòu)

(1)網(wǎng)狀模型結(jié)構(gòu)的基本特征

12.網(wǎng)狀模型的完整性約束條件支持記錄碼的概念。碼即惟一標(biāo)識記錄的數(shù)據(jù)項的集合。2)保證一個聯(lián)系中雙親記錄和子女記錄之間是一對多的聯(lián)系。3)可以支持雙親記錄和子女記錄之間某些約束條件。2.網(wǎng)狀模型的完整性約束條件支持記錄碼的概念。碼即惟一標(biāo)識網(wǎng)狀模型與層次模型的區(qū)別:網(wǎng)狀模型可以更直接地去描述現(xiàn)實世界層次模型實際上是網(wǎng)狀模型的一個特例網(wǎng)狀模型允許多個結(jié)點沒有雙親結(jié)點網(wǎng)狀模型允許結(jié)點有多個雙親結(jié)點網(wǎng)狀模型允許兩個結(jié)點之間有多種聯(lián)系(復(fù)合聯(lián)系)網(wǎng)狀模型與層次模型的區(qū)別:網(wǎng)狀數(shù)據(jù)模型的優(yōu)缺點優(yōu)點更直接地描述現(xiàn)實世界,如一個結(jié)點可以有多個雙親具有良好的性能,存取效率較高缺點結(jié)構(gòu)比較復(fù)雜,而且隨著應(yīng)用環(huán)境的擴(kuò)大,數(shù)據(jù)庫的結(jié)構(gòu)就變得越來越復(fù)雜,不利于最終用戶掌握DDL、DML語言復(fù)雜,用戶不容易使用網(wǎng)狀數(shù)據(jù)模型的優(yōu)缺點優(yōu)點2.3.4關(guān)系模型概述1.關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)

(1)關(guān)系模型中的主要術(shù)語1)關(guān)系。一個關(guān)系對應(yīng)通常所說的一張二維表。2)元組。表中的一行稱為一個元組。3)屬性。表中的一列稱為一個屬性。4)主碼。表中的某個屬性或?qū)傩越M,值可以惟一地確定一個元組,且屬性組中不含多余的屬性。5)域。屬性的取值范圍稱為域。6)分量。元組中的一個屬性值稱為分量。7)關(guān)系模式。關(guān)系的型稱為關(guān)系模式,是對關(guān)系的描述。(2)關(guān)系模型中的數(shù)據(jù)全部用關(guān)系表示關(guān)系模式一般的表示是:關(guān)系名(屬性1,屬性2,…,屬性n).2.3.4關(guān)系模型概述1.關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)關(guān)系模式一學(xué)生學(xué)籍表

學(xué)號姓名性別年齡所在系00001王平男20計算機(jī)系00002李麗女20計算機(jī)系00010張曉剛男19數(shù)學(xué)系……………學(xué)生學(xué)籍表學(xué)號姓名性別年齡所在系0002.關(guān)系操作和完整性約束條件3.關(guān)系模型與非關(guān)系模型比較

1)關(guān)系數(shù)據(jù)模型建立在嚴(yán)格的數(shù)學(xué)基礎(chǔ)之上。

2)關(guān)系數(shù)據(jù)模型的概念單一,容易理解。

3)關(guān)系數(shù)據(jù)模型的存取路徑對用戶隱蔽。

4)關(guān)系模型中的數(shù)據(jù)聯(lián)系是靠數(shù)據(jù)冗余實現(xiàn)的。

關(guān)系操作主要包括數(shù)據(jù)查詢和插入、刪除、修改數(shù)據(jù)。關(guān)系中的數(shù)據(jù)操作是集合操作。關(guān)系操作語言都是高度非過程的語言關(guān)系的完整性約束條件包括三類:實體完整性、參照完整性和用戶定義的完整性。2.關(guān)系操作和完整性約束條件3.關(guān)系模型與非關(guān)系模型比較1.?dāng)?shù)據(jù)模型的三要素是指_________,_________,_________。實際數(shù)據(jù)庫系統(tǒng)中所支持的主要數(shù)據(jù)模型是_________,_________,_________。

本題答案

2.?dāng)?shù)據(jù)模型中的_________是對數(shù)據(jù)系統(tǒng)的靜態(tài)特征描述,包括數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)間聯(lián)系的描述,_________是對數(shù)據(jù)庫系統(tǒng)的動態(tài)特征描述,是一組定義在數(shù)據(jù)上的操作,包括操作的涵義、操作符、運算規(guī)則及其語言等。1.?dāng)?shù)據(jù)模型的三要素是指_________,________.用樹型結(jié)構(gòu)表示實體類型及實體間聯(lián)系的數(shù)據(jù)模型稱為_________模型,上一層的父結(jié)點和下一層的子結(jié)點之間的聯(lián)系是_________的聯(lián)系。

本題答案

4.用有向圖結(jié)構(gòu)表示實體類型及實體間聯(lián)系的數(shù)據(jù)模型稱為_________模型,數(shù)據(jù)之間的聯(lián)系通常通過_________實現(xiàn)。

本題答案

5.層次模型的上層實體和下層實體之間表現(xiàn)為_________聯(lián)系。

本題答案

6._________是目前最常用也是最重要的一種數(shù)據(jù)模型。采用該模型作為數(shù)據(jù)的組織方式的數(shù)據(jù)庫系統(tǒng)稱為_________。.用樹型結(jié)構(gòu)表示實體類型及實體間聯(lián)系的數(shù)據(jù)模型稱為_____數(shù)據(jù)模型與概念模型課件數(shù)據(jù)模型與概念模型課件本章結(jié)束謝謝本章結(jié)束第2章數(shù)據(jù)模型與概念模型2.1信息的三種世界及其描述

2.2概念模型及其表示2.2.1概念模型的基本概念

2.2.2概念模型的表示方法2.3常見的三種數(shù)據(jù)模型2.3.1數(shù)據(jù)模型概述2.3.2層次模型及特點

2.3.3網(wǎng)狀模型及特點

2.3.4關(guān)系模型概述

第2章數(shù)據(jù)模型與概念模型2.1信息的三種世界及其描述2.1信息的三種世界及其描述1.信息的現(xiàn)實世界

我們要管理的客觀存在的各種事物、事務(wù)之間的相互聯(lián)系及事物的發(fā)生、變化過程。

(1)實體(Entity)

現(xiàn)實世界中存在的可以相互區(qū)分的事物或概念稱為實體。

(2)實體的特征(EntityCharacteristic)

每個實體都有自己的特征,利用實體的特征可以區(qū)別不同的實體。

(3)實體集及實體集間的聯(lián)系(Relation)

具有相同特征或能用同樣特征描述的實體的集合。2.1信息的三種世界及其描述1.信息的現(xiàn)實世界2.信息世界

在信息世界中:實體的特征在頭腦中形成的知識稱為屬性;實體通過其屬性表示稱為實例;同類實例的集合稱為對象,對象即實體集中的實體用屬性表示得出的信息集合;實體集之間的聯(lián)系用對象聯(lián)系表示。信息世界通過概念模型、過程模型和狀態(tài)模型反映現(xiàn)實世界,它要求對現(xiàn)實世界中的事物、事物間的聯(lián)系和事物的變化情況準(zhǔn)確、如實、全面地表示。2.信息世界在信息世界中:實體的特征在頭腦中形成的知3.信息的計算機(jī)世界1)數(shù)據(jù)項(Item):對象屬性的數(shù)據(jù)表示。

2)記錄(Record):實例的數(shù)據(jù)表示。記錄有型和值之分:記錄的型是結(jié)構(gòu),由數(shù)據(jù)項的型構(gòu)成;記錄的值表示對象中的一個實例,它的分量是數(shù)據(jù)項值。

3)文件(File):對象的數(shù)據(jù)表示,同類記錄的集合。

4)數(shù)據(jù)模型(DataModel):現(xiàn)實世界中的事物和相互聯(lián)系數(shù)據(jù)化的結(jié)果就是數(shù)據(jù)模型。3.信息的計算機(jī)世界1)數(shù)據(jù)項(Item):對象屬性的數(shù)4.現(xiàn)實世界、信息世界和計算機(jī)世界的關(guān)系信息的三種世界術(shù)語的對應(yīng)關(guān)系表現(xiàn)實世界信息世界

計算機(jī)世界

實體

實例

記錄

特征

屬性

數(shù)據(jù)項

實體集

對象或?qū)嶓w型

數(shù)據(jù)或文件

實體間的聯(lián)系對象間的聯(lián)系

數(shù)據(jù)間的聯(lián)系

概念模型數(shù)據(jù)模型

4.現(xiàn)實世界、信息世界和計算機(jī)世界的關(guān)系信息的三種世界術(shù)語現(xiàn)實世界、信息世界和計算機(jī)世界的關(guān)系信息的三個世界的聯(lián)系和轉(zhuǎn)換過程

現(xiàn)實世界系統(tǒng)分析信息世界數(shù)據(jù)庫設(shè)計計算機(jī)世界

事物及聯(lián)系信息化信息模型數(shù)據(jù)化數(shù)據(jù)模型現(xiàn)實世界、信息世界和計算機(jī)世界的關(guān)系信息的三個世界的聯(lián)系和轉(zhuǎn)??模型一張地圖,一個汽車模型,一個精致的航模飛機(jī)以及一組建筑設(shè)計沙盤都是具體的模型。所以,對于模型,一眼望去,就會使人聯(lián)想到真實生活中的事物。模型是對現(xiàn)實世界的模擬和抽象。數(shù)據(jù)模型是現(xiàn)實世界中數(shù)據(jù)特征的抽象。??模型一張地圖,一個汽車模型,一個精致的航模飛機(jī)以及一組建2.2概念模型及其表示2.2.1概念模型的基本概念

1.概念模型涉及的基本概念

(1)對象(Object)和實例(Instance)

現(xiàn)實世界中具有相同性質(zhì)、服從相同規(guī)則的一類事物(概念)的抽象稱為對象。對象中的每一個具體的事物(實體)為該對象的實例。

(2)屬性(Attribute)

屬性為實體的某一方面特征的抽象表示。

(3)主碼(PrimaryKey)和次碼(SecondaryKey)

碼能夠惟一標(biāo)識一個實體;不能惟一標(biāo)識實體的屬性叫次碼。

(4)域(Domain)

屬性的取值范圍稱為屬性的域。

概念模型是對信息世界的管理對象、屬性及聯(lián)系等信息的描述形式。概念模型不依賴計算機(jī)及DBMS,它是現(xiàn)實世界的真實全面反映。2.2概念模型及其表示2.2.1概念模型的基本概念

2.實體聯(lián)系的類型(1)兩個實體集之間的聯(lián)系

1)一對一聯(lián)系(1:1):設(shè)有兩個實體集A和B,對于A中的每一個實體,B中至多有一個實體與之聯(lián)系;反之亦然。

2)一對多聯(lián)系(1:n):設(shè)有兩個實體集A和B,對于A的每一個實體,B中有一個或多個實體與之聯(lián)系;而對于B的每一個實體,A中至多有一個實體與之聯(lián)系。

3)多對多聯(lián)系(m:n):設(shè)有兩個實體集A和B,對于A的每一個實體,B中有一個或多個實體與之聯(lián)系;反之亦然。2.實體聯(lián)系的類型(1)兩個實體集之間的聯(lián)系

1)一對兩個實體集之間的聯(lián)系工廠

負(fù)責(zé)廠長11學(xué)校

工作教師1n職工

參加體育團(tuán)體mn兩個實體集聯(lián)系的例子兩個實體集之間的聯(lián)系工廠負(fù)責(zé)廠長11學(xué)校工作教師1n職工廠長姓名年齡性別工廠入廠時間管理11廠名廠齡地址廠長姓名年齡性別工廠入廠時間管理11廠名廠齡地址班級班級名稱班級號人數(shù)學(xué)生班主任包括1N學(xué)號姓名性別班級班級名稱班級號人數(shù)學(xué)生班主任包括1N學(xué)號姓名性別學(xué)生學(xué)號姓名性別課程專業(yè)選修MN課程號課程名學(xué)分學(xué)生學(xué)號姓名性別課程專業(yè)選修MN課程號課程名學(xué)分(2)多實體集之間的聯(lián)系1)多實體集之間的一對多聯(lián)系。

設(shè)實體集E1,…En,對于實體集Ej(j=1,…n)中的一個給定實體,最多只和其他實體集Ei(ij)中的一個實體相聯(lián)系,則稱Ej與E1…,En之間的聯(lián)系是一對多的。

2)多實體集之間的多對多聯(lián)系。

在兩個以上的多個實體集之間,當(dāng)一個實體集與其他實體集之間均存在多對多聯(lián)系,而其他實體集之間沒有聯(lián)系時,這種聯(lián)系稱為多實體集間的多對多聯(lián)系。課程講授教師參考書1nm供應(yīng)商供應(yīng)項目零件mpn(2)多實體集之間的聯(lián)系1)多實體集之間的一對多聯(lián)系。課(3)單個實體型內(nèi)的聯(lián)系同一個實體型內(nèi)的各實體之間也可以存在一對一,一對多,多對多的聯(lián)系。職工領(lǐng)導(dǎo)1n單個實體型內(nèi)部1:n聯(lián)系實體型1聯(lián)系名mn單個實體型內(nèi)的m:n聯(lián)系(3)單個實體型內(nèi)的聯(lián)系同一個實體型內(nèi)的各實體之間也可以存在2.2.2概念模型的表示方法目前描述概念模型最常用的方法是實體-聯(lián)系(Entity-Relationship)方法,即E-R方法,使用的工具稱為E-R圖。E-R圖所描述的現(xiàn)實世界的信息結(jié)構(gòu)稱為實體-聯(lián)系模型(E-R模型)。1)用長方形表示實體集,長方形內(nèi)寫明實體集名。2)用橢圓形表示實體集的屬性,并用線段將其與相應(yīng)的實體集連接起來。3)用菱形表示實體集間的聯(lián)系,菱形內(nèi)寫上聯(lián)系名,用線段分別與有關(guān)實體集連接起來,在線段旁標(biāo)出聯(lián)系的類型。如果聯(lián)系具有屬性,則該屬性仍用橢圓框表示,仍需要用線段將屬性與其聯(lián)系連接起來。學(xué)生學(xué)號姓名性別年齡所在系2.2.2概念模型的表示方法目前描述概念模型最常用的方法練習(xí)1為某百貨公司設(shè)計一個ER模型。

百貨管轄若干個連鎖商店,每家商店經(jīng)營若干商品,每家商店有若干職工,但每個職工只能服務(wù)于一家商店。實體類型“商店”的屬性有:商店編號,店名,店址,店經(jīng)理。實體類型“商品”的屬性有:商品編號,商品名,單價,產(chǎn)地。實體類型“職工”的屬性有:職工編號,職工名,性別,工資。在聯(lián)系中應(yīng)反映出職工參加某商店工作的開始時間,商店銷售商品的月銷售量。試畫出反映商店、商品、職工實體類型及聯(lián)系類型的ER圖,并將其轉(zhuǎn)換成關(guān)系模式集。

練習(xí)1為某百貨公司設(shè)計一個ER模型。

百貨管轄若干個連鎖商實體:商店(商店編號,店名,店址,店經(jīng)理)

商品(商品編號,商品名,單價,產(chǎn)地)

職工(職工編號,職工名,性別,工資)

聯(lián)系:SC(商店—商品之間1:N的聯(lián)系,

聯(lián)系屬性為“職工參加商店工作的開始時間”。

SE(商店—職工之間1:N的聯(lián)系),

聯(lián)系屬性為“月銷售量”。實體:商店(商店編號,店名,店址,店經(jīng)理)

商品(商數(shù)據(jù)模型與概念模型課件練習(xí)2:圖書借閱系統(tǒng)中實體與實體集屬性的描述練習(xí)2:圖書借閱系統(tǒng)中實體與實體集屬性的描述練習(xí)4:學(xué)校教學(xué)管理的E-R模型學(xué)校有若干個系,每個系有各自的系號、系名和系主任;每個系有若干名教師和學(xué)生,教師有教師號、教師名和職稱屬性,每個教師可以擔(dān)任若干門課程,一門課程只能由一位教師講授,課程有課程號、課程名和學(xué)分,并參加多項項目,一個項目有多人合作,且責(zé)任輕重有個排名,項目有項目號、名稱和負(fù)責(zé)人;學(xué)生有學(xué)號、姓名、年齡、性別,每個學(xué)生可以同時選修多門課程,選修有分?jǐn)?shù)。(5分)請設(shè)計此學(xué)校的教學(xué)管理的E-R模型。練習(xí)4:學(xué)校教學(xué)管理的E-R模型學(xué)校有若干個系,每個數(shù)據(jù)模型與概念模型課件數(shù)據(jù)模型與概念模型課件例題5:用E-R圖表示某個工廠物資管理的概念模型實體倉庫:倉庫號、面積、電話號碼零件:零件號、名稱、規(guī)格、單價、描述供應(yīng)商:供應(yīng)商號、姓名、地址、電話號碼、帳號項目:項目號、預(yù)算、開工日期職工:職工號、姓名、年齡、職稱例題5:用E-R圖表示某個工廠物資管理的概念模型實體之間的聯(lián)系如下:

(1)一個倉庫可以存放多種零件,一種零件可以存放在多個倉庫中。倉庫和零件具有多對多的聯(lián)系。用庫存量來表示某種零件在某個倉庫中的數(shù)量。(2)一個倉庫有多個職工當(dāng)倉庫保管員,一個職工只能在一個倉庫工作,倉庫和職工之間是一對多的聯(lián)系。職工實體型中具有一對多的聯(lián)系(3)職工之間具有領(lǐng)導(dǎo)-被領(lǐng)導(dǎo)關(guān)系。即倉庫主任領(lǐng)導(dǎo)若干保管員。(4)供應(yīng)商、項目和零件三者之間具有多對多的聯(lián)系實體之間的聯(lián)系如下:數(shù)據(jù)模型與概念模型課件例

6

電影數(shù)據(jù)庫的實體和聯(lián)系

表示一個簡單的電影數(shù)據(jù)庫。實體集是Movies、Stars和Studios。

Movies實體集有4個屬性:title、year、length和filmType。另外兩個實體集Stars和Studios正好有兩個相同的屬性:name和address。圖中還有兩個聯(lián)系:

Stars-in是電影及其影星的聯(lián)系。這也是影星與其參演電影的聯(lián)系。

Owns是電影及其所屬電影公司的聯(lián)系。指向?qū)嶓w集Studios的箭頭表示每部電影只屬于惟一的電影公司。

6

電影數(shù)據(jù)庫的實體和聯(lián)系

表示一個簡單的電影數(shù)據(jù)庫。三路聯(lián)系

是一個三路聯(lián)系,包括電影公司、影星和電影三個實體集。這種聯(lián)系表明電影公司和某一影星簽約,讓他(或她)出演一部電影。在多路聯(lián)系中,指向?qū)嶓w集E的箭頭表示:如果從此聯(lián)系中除E之外的其他每個實體集選擇一個實體,它們至多與E中的一個實體有聯(lián)系。在圖中,有一個箭頭指向Studios,表明對于某一影星和電影來說,只有一家電影公司與這位影星簽訂了出演此電影的合同。

三路聯(lián)系

是一個三路聯(lián)系,包括電影公司、影星和電影三個聯(lián)系中的角色

在一個聯(lián)系中一個實體集可能出現(xiàn)兩次或多次。如果是這樣,則根據(jù)實體集在聯(lián)系中出現(xiàn)的次數(shù),把聯(lián)系與實體集用同樣多的連線連接起來。每一條連向?qū)嶓w集的連線代表實體集在聯(lián)系中扮演的不同角色(role)。因而,人們給實體集和聯(lián)系之間的線命名,稱之為“角色”。

帶有角色的聯(lián)系

2.5給出了一個實體集Movies和一個由它本身組成的聯(lián)系Sequel-of。每個聯(lián)系連接兩部電影,其中一部是另一部的續(xù)集,為了在一種聯(lián)系中區(qū)別兩部電影,一條線標(biāo)以O(shè)riginal,另一條線標(biāo)以Sequel,分別代表最初的電影和續(xù)集。假設(shè)一部電影有許多部續(xù)集,但對于每部續(xù)集來說只存在一部最初的電影。所以Sequel電影與Original電影之間是多對一聯(lián)系。聯(lián)系中的角色

在一個聯(lián)系中一個實體集可能出現(xiàn)兩次或多次。如果一個有屬性的聯(lián)系

一個有屬性的聯(lián)系

例7:運動會例7:運動會數(shù)據(jù)模型與概念模型課件例8:電腦銷售公司一家電腦銷售公司,銷售整機(jī),外設(shè)和零部件。該公司有三個部門:市場部技術(shù)部財務(wù)部。市場部有18位業(yè)務(wù)員,負(fù)責(zé)采購和銷售業(yè)務(wù);技術(shù)部有14位工程師,負(fù)責(zé)售后服務(wù)保修等技術(shù)性的工作;財務(wù)部有12位工作人員一位會計一位出納負(fù)責(zé)財務(wù)工作。公司需要將所經(jīng)營的計算機(jī)設(shè)備的庫存客戶銷售保修職工等信息都保存在數(shù)據(jù)庫中。設(shè)計一個數(shù)據(jù)庫(自定義實體3個以上屬性)。例8:電腦銷售公司一家電腦銷售公司,銷售整機(jī),外設(shè)和零部件。例9:先局部例9:先局部(6)ER優(yōu)化例子項目=產(chǎn)品職工與倉庫的聯(lián)系冗余職工與職工的領(lǐng)導(dǎo)聯(lián)系冗余(6)ER優(yōu)化例子項目=產(chǎn)品107數(shù)據(jù)模型與概念模型課件ER圖的規(guī)劃方法

將所得到的屬性分門歸類,利用以前講述的幾條簡單準(zhǔn)則即可將其并入實體或者聯(lián)系。

按照的準(zhǔn)則主要有兩個:

1)屬性如果不能具有獨立存在的意義,則不能成為一個新建立實體。

2)屬性歸入一個實體的依據(jù)是對實體的每個實例而言具有唯一值。ER圖的規(guī)劃方法

將所得到的屬性分門歸類,利用以前講數(shù)據(jù)模型與概念模型課件相應(yīng)的ER圖結(jié)構(gòu)可以描述為:

合同(合同號,訂貨日期,廠商名稱,廠商地址)

貨物(貨物編號,貨物分類)

合同貨物(合同號,貨物編號,訂貨數(shù)量)

相應(yīng)的ER圖結(jié)構(gòu)可以描述為:

合同(合同號,訂貨日期除此以外,還有一種方法,將廠商視為實體,相應(yīng)的ER圖結(jié)構(gòu)可以描述為:

合同(合同號,訂貨日期,廠商號)

貨物(貨物編號,貨物分類)

廠商(廠商號,廠商名稱,廠商地址)

合同貨物(合同號,貨物編號,訂貨數(shù)量)

除此以外,還有一種方法,將廠商視為實體,相應(yīng)的ER圖結(jié)構(gòu)可以兩種方法的比較:

1)第一種方法存在冗余(相同的廠商具有相同的地址),但是實體少,處理簡單,以后利用范式分析方法可以得到標(biāo)準(zhǔn)結(jié)構(gòu)。所以,實體能少則少。

2)第二種方法需要考察廠商實體與合同、貨物的關(guān)系,發(fā)現(xiàn)與合同存在一對多的關(guān)系,但與貨物存在多對多的關(guān)系,明顯增加處理的復(fù)雜度。事實上,可以考慮去除廠商與貨物的關(guān)系(可以從剩下的關(guān)系中推斷出來,但是其他的關(guān)系不能省略)。兩種方法的比較:

1)第一種方法存在冗余(相同的廠商數(shù)據(jù)模型與概念模型課件4、ER模型的擴(kuò)展弱實體子類(特殊化)與超類(一般化)4、ER模型的擴(kuò)展弱實體(1)弱實體(weakentity)一個弱實體的存在必須以另一實體的存在為前提弱實體所依賴存在的實體稱為常規(guī)實體(regularentity)或強(qiáng)實體(strongentity)弱實體有自己的標(biāo)識,但它的標(biāo)識只保證對于所依賴的強(qiáng)實體而言是唯一的。在整個系統(tǒng)中沒有自己唯一的實體標(biāo)識弱實體的例子一個公司的人事系統(tǒng)中,既需要管理職工實體,也需要管理職工的子女。則子女在人事系統(tǒng)中存在的前提就是他們的父母首先存在于人事系統(tǒng)中子女是弱實體,職工是強(qiáng)實體是否弱實體要看具體應(yīng)用:例如在社區(qū)人口管理系統(tǒng)中,子女就不是弱實體,即使雙親都不存在了,子女仍應(yīng)存在于人口系統(tǒng)中(1)弱實體(weakentity)一個弱實體的存在必須以(2)弱實體的表示弱實體用雙線矩形表示,存在依賴聯(lián)系用雙線菱形表示,箭頭指向強(qiáng)實體子女撫養(yǎng)職工1N(2)弱實體的表示弱實體用雙線矩形表示,存在依賴聯(lián)系用雙線菱例

弱實體集的來源

一個電影公司可能有幾套拍攝班子(或稱為工作室)。這些拍攝班子可能被一家電影公司指定為crew1、crew2等等??墒?,其他電影公司也可能用相同的編號,于是,number屬性不能成為拍攝班子的鍵。為了惟一地命名一套拍攝班子,需要同時給出它所屬電影公司的名字和它本身的編號。圖

顯示了這種情況。弱實體集Crews的鍵是它自己的number屬性和Studios的name屬性,Crews和Studios通過多對一聯(lián)系Unit-of相連接。例

弱實體集的來源

一個電影公司可能有幾套拍攝班子(或稱為

弱實體集的要求如果E是弱實體集,則它的鍵組成包括:若干個它自己的屬性(也可以沒有);通過某些多對一聯(lián)系從E到達(dá)其他實體集的鍵。這些多對一聯(lián)系稱為E的支持聯(lián)系(supportingrelationship)。為了使從E到某個實體集F的多對一聯(lián)系R成為E的一個支持聯(lián)系,必須具備下面的條件:R必須是從E到F的二元的多對一聯(lián)系[2];R必須有從E到F的引用完整性。也就是說,對于每個E實體,經(jīng)R與它相聯(lián)系的F實體都必須存在于實際數(shù)據(jù)庫中。換言之,必須有一個從R到F的圓箭頭。F提供給E作鍵的屬性必須是F的鍵屬性;如果F本身就是弱實體集,那么F提供給E的部分或全部鍵屬性是F由支持聯(lián)系連接的一個或多個實體集G的鍵屬性。同樣的,如果G是弱實體集,則G的某些鍵屬性又將由另一個實體集提供,如此繼續(xù)下去。

弱實體集的要求如果E是弱實體集,則它的鍵組成包括:弱實體集的符號用下面的約定來描述一個實體集是弱實體集,并且聲明它的鍵屬性。如果一個實體集是弱實體集,它就被顯示為雙邊的矩形。例如,圖

2.10中的Crews。它的多對一支持聯(lián)系被顯示為雙邊的菱形,例如,圖

2.10中的Unit-of。如果一個實體集提供了構(gòu)成它自己鍵的屬性,則那些屬性帶有下劃線。例如,圖

2.10中,拍攝班子的編號雖然不是Crews鍵的全部,但是它是其自身的鍵的一部分。

這些約定可以被概括為:無論何時用到,但凡實體集E有雙邊,它就是弱實體集。E中帶下劃線的屬性(如果有的話),再加上E被雙邊的多對一聯(lián)系指向的實體集的鍵屬性,必定對E的實體是惟一的。另外,雙邊的菱形只用于支持聯(lián)系,從弱實體集引出的多對一聯(lián)系有可能不是支持聯(lián)系,因此也就不是雙邊的菱形。弱實體集的符號用下面的約定來描述一個實體集是弱實體集,并且(3)子類(特殊化)與超類(一般化)子類(Subtype)和超類(Supertype)兩個實體A和B并不相同,但實體A屬于實體B,則A稱為實體子類,B稱為實體超類子類是超類的特殊化,超類是子類的一般化子類繼承了超類的全部屬性,因此子類的標(biāo)識就是超類的標(biāo)識(3)子類(特殊化)與超類(一般化)子類(Subtype)和如學(xué)生實體中包含本科生,研究生,大專三個子類,而學(xué)生實體就稱為超類.經(jīng)理是職工的子類如職工實體可以分成機(jī)修工,裝配工,冷作工,負(fù)責(zé)人等在ER設(shè)計時,可以根據(jù)實際情況增加子類,也可以根據(jù)若干實體抽象出超類如學(xué)生實體中包含本科生,研究生,大專三個子類,而學(xué)生實體就稱(4)子類符號ISA表示子類與超類關(guān)系領(lǐng)導(dǎo)ISA職工會員ISA高級會員注冊會員正式會員(4)子類符號ISA表示子類與超類關(guān)系領(lǐng)導(dǎo)ISA職工會員IS(5)子類例子(5)子類例子2.3

常見的三種數(shù)據(jù)模型2.3.1數(shù)據(jù)模型概述

1.數(shù)據(jù)模型的三要素

1)數(shù)據(jù)結(jié)構(gòu):所研究的對象類型的集合。包括與數(shù)據(jù)類型、內(nèi)容、性質(zhì)有關(guān)的對象;與數(shù)據(jù)之間聯(lián)系有關(guān)的對象。

2)數(shù)據(jù)操作:對數(shù)據(jù)庫中各種數(shù)據(jù)對象允許執(zhí)行的操作集合。包括操作對象和有關(guān)的操作規(guī)則兩部分。

3)數(shù)據(jù)約束條件:一組數(shù)據(jù)完整性規(guī)則的集合。

2.3常見的三種數(shù)據(jù)模型2.3.1數(shù)據(jù)模型概述

1.2.3

常見的三種數(shù)據(jù)模型

2.常見的數(shù)據(jù)模型

層次模型、網(wǎng)狀模型和關(guān)系模型。

在非關(guān)系模型中,實體集用記錄表示,實體的屬性對應(yīng)記錄的數(shù)據(jù)項(或字段)。實體集之間的聯(lián)系轉(zhuǎn)換成兩兩記錄之間的聯(lián)系。非關(guān)系模型中數(shù)據(jù)結(jié)構(gòu)的單位是基本層次聯(lián)系。RiRjLij2.3常見的三種數(shù)據(jù)模型

2.常見的數(shù)據(jù)模型

層次模型第一代:層次數(shù)據(jù)庫/網(wǎng)狀數(shù)據(jù)庫1969年IBM公司的IMS層次數(shù)據(jù)庫1970年CODASYL的DBTG網(wǎng)狀數(shù)據(jù)庫第二代:關(guān)系數(shù)據(jù)庫關(guān)系理論:70年CODD關(guān)系理論商品化的RDBMS:80年代成為主流DBMS第三代:對象-關(guān)系數(shù)據(jù)庫90年代OODBMS:支持?jǐn)?shù)據(jù)管理、對象管理、知識管理90年代ORDBMS:保持和繼承第二代數(shù)據(jù)庫系統(tǒng)技術(shù)各種標(biāo)準(zhǔn):SQL3、ODBC、JDBC、SQLJ第一代:層次數(shù)據(jù)庫/網(wǎng)狀數(shù)據(jù)庫2.3.2層次模型及特點1.層次模型的數(shù)據(jù)結(jié)構(gòu)

(1)層次模型的定義

1)有且僅有一個結(jié)點沒有雙親結(jié)點,這個結(jié)點稱為根結(jié)點。

2)除根結(jié)點之外的其他結(jié)點有且只有一個雙親結(jié)點。

(2)層次模型的數(shù)據(jù)表示方法

實體集使用記錄表示;記錄型包含若干個字段;記錄值表示實體;記錄之間的聯(lián)系使用基本層次聯(lián)系表示。

(3)層次模型的特點

層次模型像一棵倒立的樹,只有一個根結(jié)點,有若干個葉結(jié)點,結(jié)點的雙親是惟一的。

2.3.2層次模型及特點1.層次模型的數(shù)據(jù)結(jié)構(gòu)

(1)院系編號院系名稱辦公地點教研室編號教研室學(xué)號姓名年齡專業(yè)方向職工號姓名教學(xué)院系數(shù)據(jù)模型院系教研室學(xué)生教師D10計算機(jī)系9號樓C01硬件教研室C02軟件教研室00001王平2000002李麗20電器92001王海自動化92002張錚數(shù)據(jù)庫92003許明人工智能92004陳真教學(xué)院系數(shù)據(jù)庫的一個實例院系編號院系名稱辦公地點教研室編號教研室學(xué)號姓名年齡專業(yè)方向2.層次模型的完整性約束條件在進(jìn)行插入記錄值操作時,如果沒有指明相應(yīng)的雙親記錄值(首記錄值),則不能插入子女記錄值(屬記錄值)。(2)進(jìn)行刪除記錄操作時,如果刪除雙親記錄值(首記錄值),則相應(yīng)的子女結(jié)點值(屬記錄值)也同時被刪除。(3)進(jìn)行修改記錄操作時,應(yīng)修改所有相應(yīng)記錄,以保證數(shù)據(jù)的一致性。

2.層次模型的完整性約束條件在進(jìn)行插入記錄值操作時,如果沒

溫馨提示

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

最新文檔

評論

0/150

提交評論