第一章:緒論
1.1 數(shù)據(jù)庫系統(tǒng)概述
1.2 數(shù)據(jù)模型
1.3 數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)
1.4 數(shù)據(jù)庫系統(tǒng)的組成
1.5 數(shù)據(jù)庫技術(shù)的研究領(lǐng)域
1.6 小結(jié)
數(shù)據(jù)模型
在數(shù)據(jù)庫中用數(shù)據(jù)模型這個(gè)工具來抽象、表示和處理現(xiàn)實(shí)世界中的數(shù)據(jù)和信息。通俗地講數(shù)據(jù)模型就是現(xiàn)實(shí)世界的模擬。
數(shù)據(jù)模型應(yīng)滿足三方面要求
能比較真實(shí)地模擬現(xiàn)實(shí)世界
容易為人所理解
便于在計(jì)算機(jī)上實(shí)現(xiàn)
數(shù)據(jù)模型分成兩個(gè)不同的層次
概念模型 也稱信息模型,它是按用戶的觀點(diǎn)來對(duì)數(shù)據(jù)和信息建模,主要用于數(shù)據(jù)庫設(shè)計(jì)
(2)數(shù)據(jù)模型 主要包括網(wǎng)狀模型、層次模型、關(guān)系模型等,它是按計(jì)算機(jī)系統(tǒng)的觀點(diǎn)對(duì)數(shù)據(jù)建模,主要用于DBMS的實(shí)現(xiàn)
數(shù)據(jù)模型
將客觀對(duì)象抽象成為一種不依賴具體計(jì)算機(jī)系統(tǒng)的信息結(jié)構(gòu)。
數(shù)據(jù)模型
概念模型的用途
概念模型用于信息世界的建模
是現(xiàn)實(shí)世界到機(jī)器世界的一個(gè)中間層次
是數(shù)據(jù)庫設(shè)計(jì)的有力工具
數(shù)據(jù)庫設(shè)計(jì)人員和用戶之間進(jìn)行交流的語言
對(duì)概念模型的基本要求
較強(qiáng)的語義表達(dá)能力,能夠方便、直接地表達(dá)應(yīng)用中的各種語義知識(shí)
簡(jiǎn)單、清晰、易于用戶理解。
數(shù)據(jù)模型
信息世界中的基本概念
(1) 實(shí)體(Entity)
客觀存在并可相互區(qū)別的事物稱為實(shí)體。
可以是具體的人、事、物或抽象的概念。
(2) 屬性(Attribute)
實(shí)體所具有的某一特性稱為屬性。
一個(gè)實(shí)體可以由若干個(gè)屬性來刻畫。
(3) 碼(Key)
標(biāo)識(shí)實(shí)體的屬性集稱為碼。
數(shù)據(jù)模型
(4) 域(Domain)
屬性的取值范圍稱為該屬性的域。
(5) 實(shí)體型(Entity Type)
用實(shí)體名及其屬性名集合來抽象和刻畫
同類實(shí)體稱為實(shí)體型
(6) 實(shí)體集(Entity Set)
同型實(shí)體的集合稱為實(shí)體集
(7) 聯(lián)系(Relationship)
數(shù)據(jù)模型
現(xiàn)實(shí)世界中事物內(nèi)部以及事物之間的聯(lián)系在信息世界中反映為實(shí)體內(nèi)部的聯(lián)系和實(shí)體之間的聯(lián)系
兩個(gè)實(shí)體間的聯(lián)系: 一對(duì)一;一對(duì)多;多對(duì)多。
數(shù)據(jù)模型
數(shù)據(jù)模型
數(shù)據(jù)模型
一對(duì)一聯(lián)系
如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中至多有一個(gè)實(shí)體與之聯(lián)系,反之亦然,則稱實(shí)體集A與實(shí)體集B具有一對(duì)一聯(lián)系。記為1:1。
實(shí)例
班級(jí)與班長(zhǎng)之間的聯(lián)系:
一個(gè)班級(jí)只有一個(gè)正班長(zhǎng)
一個(gè)班長(zhǎng)只在一個(gè)班中任職
數(shù)據(jù)模型
一對(duì)多聯(lián)系
如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中有n個(gè)實(shí)體(n≥0)與之聯(lián)系,反之,對(duì)于實(shí)體集B中的每一個(gè)實(shí)體,實(shí)體集A中至多只有一個(gè)實(shí)體與之聯(lián)系,則稱實(shí)體集A與實(shí)體集B有一對(duì)多聯(lián)系,記為1:n
實(shí)例
班級(jí)與學(xué)生之間的聯(lián)系:
一個(gè)班級(jí)中有若干名學(xué)生,
每個(gè)學(xué)生只在一個(gè)班級(jí)中學(xué)習(xí)
數(shù)據(jù)模型
多對(duì)多聯(lián)系(m:n)
如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中有n個(gè)實(shí)體(n≥0)與之聯(lián)系,反之,對(duì)于實(shí)體集B中的每一個(gè)實(shí)體,實(shí)體集A中也有m個(gè)實(shí)體(m≥0)與之聯(lián)系,則稱實(shí)體集A與實(shí)體B具有多對(duì)多聯(lián)系。記為m:n
實(shí)例
課程與學(xué)生之間的聯(lián)系:
一門課程同時(shí)有若干個(gè)學(xué)生選修
一個(gè)學(xué)生可以同時(shí)選修多門課程
數(shù)據(jù)模型
多個(gè)實(shí)體間的聯(lián)系
數(shù)據(jù)模型
概念模型的表示方法-E - R圖(Entity-Relationship Approach)
用E-R圖來描述現(xiàn)實(shí)世界的概念模型
E-R方法也稱為E-R模型
實(shí)體型
用矩形表示,矩形框內(nèi)寫明實(shí)體名。
數(shù)據(jù)模型
屬性
用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)體連接起來
數(shù)據(jù)模型
聯(lián)系
聯(lián)系本身:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實(shí)體連接起來,同時(shí)在無向邊旁標(biāo)上聯(lián)系的類型(1:1、1:n或m:n)
聯(lián)系的屬性:聯(lián)系本身也是一種實(shí)體型,也可以有屬性。如果一個(gè)聯(lián)系具有屬性,則這些屬性也要用無向邊與該聯(lián)系連接起來
數(shù)據(jù)模型
數(shù)據(jù)模型
數(shù)據(jù)模型
數(shù)據(jù)模型
數(shù)據(jù)模型
E-R圖實(shí)例(1)
數(shù)據(jù)模型
E-R圖實(shí)例(2)-工廠物資管理概念模型
首先確定實(shí)體類型。本問題有三個(gè)實(shí)體類型:零件PART,工程項(xiàng)目PROJECT,零件供應(yīng)商SUPPLIER。
確定聯(lián)系類型。PROJECT和PART之間是M:N聯(lián)系,PART和SUPPLIER之間也是M:N聯(lián)系,分別命名為P_P和P_S.
把實(shí)體類型和聯(lián)系類型組合成ER圖。
確定實(shí)體類型和聯(lián)系類型的屬性。
確定實(shí)體類型的鍵,在ER圖中屬于碼的屬性名下畫一條橫線。
數(shù)據(jù)模型
常用的數(shù)據(jù)模型
實(shí)體-聯(lián)系方法是抽象和描述現(xiàn)實(shí)世界的有力工具。用E-R圖表示的概念模型獨(dú)立于具體的DBMS所支持的數(shù)據(jù)模型,是各種數(shù)據(jù)模型的共同基礎(chǔ)。
常用的數(shù)據(jù)模型
層次模型
網(wǎng)狀模型
關(guān)系模型
對(duì)象模型
數(shù)據(jù)模型
數(shù)據(jù)模型的組成要素
數(shù)據(jù)結(jié)構(gòu)是所研究的對(duì)象類型的集合;
1.與數(shù)據(jù)類型、內(nèi)容、性質(zhì)有關(guān)的對(duì)象;
2.與數(shù)據(jù)之間聯(lián)系有關(guān)的對(duì)象。
數(shù)據(jù)操作是指對(duì)數(shù)據(jù)庫中各種對(duì)象的實(shí)例允許執(zhí)行的操作的集合。包括操作及有關(guān)的操作規(guī)則(檢索和更新兩類);
數(shù)據(jù)的約束條件是完整性規(guī)則的集合。
數(shù)據(jù)及其聯(lián)系所具有的制約和依存規(guī)則的。
常用的數(shù)據(jù)模型
層次模型
滿足下面兩個(gè)條件的基本層次聯(lián)系的集合為層次模型。
1. 有且只有一個(gè)結(jié)點(diǎn)沒有雙親結(jié)點(diǎn),這個(gè)結(jié)點(diǎn)稱為根結(jié)點(diǎn)
2. 根以外的其它結(jié)點(diǎn)有且只有一個(gè)雙親結(jié)點(diǎn)
層次模型中的幾個(gè)術(shù)語
根結(jié)點(diǎn),雙親結(jié)點(diǎn),兄弟結(jié)點(diǎn),葉結(jié)點(diǎn)
常用的數(shù)據(jù)模型
層次模型
有且僅有一個(gè)結(jié)點(diǎn)無雙親,這個(gè)結(jié)點(diǎn)稱為根結(jié)點(diǎn)。
其它結(jié)點(diǎn)有且僅有一個(gè)雙親。
1.1 數(shù)據(jù)庫系統(tǒng)概述
1.2 數(shù)據(jù)模型
1.3 數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)
1.4 數(shù)據(jù)庫系統(tǒng)的組成
1.5 數(shù)據(jù)庫技術(shù)的研究領(lǐng)域
1.6 小結(jié)
數(shù)據(jù)模型
在數(shù)據(jù)庫中用數(shù)據(jù)模型這個(gè)工具來抽象、表示和處理現(xiàn)實(shí)世界中的數(shù)據(jù)和信息。通俗地講數(shù)據(jù)模型就是現(xiàn)實(shí)世界的模擬。
數(shù)據(jù)模型應(yīng)滿足三方面要求
能比較真實(shí)地模擬現(xiàn)實(shí)世界
容易為人所理解
便于在計(jì)算機(jī)上實(shí)現(xiàn)
數(shù)據(jù)模型分成兩個(gè)不同的層次
概念模型 也稱信息模型,它是按用戶的觀點(diǎn)來對(duì)數(shù)據(jù)和信息建模,主要用于數(shù)據(jù)庫設(shè)計(jì)
(2)數(shù)據(jù)模型 主要包括網(wǎng)狀模型、層次模型、關(guān)系模型等,它是按計(jì)算機(jī)系統(tǒng)的觀點(diǎn)對(duì)數(shù)據(jù)建模,主要用于DBMS的實(shí)現(xiàn)
數(shù)據(jù)模型
將客觀對(duì)象抽象成為一種不依賴具體計(jì)算機(jī)系統(tǒng)的信息結(jié)構(gòu)。
數(shù)據(jù)模型
概念模型的用途
概念模型用于信息世界的建模
是現(xiàn)實(shí)世界到機(jī)器世界的一個(gè)中間層次
是數(shù)據(jù)庫設(shè)計(jì)的有力工具
數(shù)據(jù)庫設(shè)計(jì)人員和用戶之間進(jìn)行交流的語言
對(duì)概念模型的基本要求
較強(qiáng)的語義表達(dá)能力,能夠方便、直接地表達(dá)應(yīng)用中的各種語義知識(shí)
簡(jiǎn)單、清晰、易于用戶理解。
數(shù)據(jù)模型
信息世界中的基本概念
(1) 實(shí)體(Entity)
客觀存在并可相互區(qū)別的事物稱為實(shí)體。
可以是具體的人、事、物或抽象的概念。
(2) 屬性(Attribute)
實(shí)體所具有的某一特性稱為屬性。
一個(gè)實(shí)體可以由若干個(gè)屬性來刻畫。
(3) 碼(Key)
標(biāo)識(shí)實(shí)體的屬性集稱為碼。
數(shù)據(jù)模型
(4) 域(Domain)
屬性的取值范圍稱為該屬性的域。
(5) 實(shí)體型(Entity Type)
用實(shí)體名及其屬性名集合來抽象和刻畫
同類實(shí)體稱為實(shí)體型
(6) 實(shí)體集(Entity Set)
同型實(shí)體的集合稱為實(shí)體集
(7) 聯(lián)系(Relationship)
數(shù)據(jù)模型
現(xiàn)實(shí)世界中事物內(nèi)部以及事物之間的聯(lián)系在信息世界中反映為實(shí)體內(nèi)部的聯(lián)系和實(shí)體之間的聯(lián)系
兩個(gè)實(shí)體間的聯(lián)系: 一對(duì)一;一對(duì)多;多對(duì)多。
數(shù)據(jù)模型
數(shù)據(jù)模型
數(shù)據(jù)模型
一對(duì)一聯(lián)系
如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中至多有一個(gè)實(shí)體與之聯(lián)系,反之亦然,則稱實(shí)體集A與實(shí)體集B具有一對(duì)一聯(lián)系。記為1:1。
實(shí)例
班級(jí)與班長(zhǎng)之間的聯(lián)系:
一個(gè)班級(jí)只有一個(gè)正班長(zhǎng)
一個(gè)班長(zhǎng)只在一個(gè)班中任職
數(shù)據(jù)模型
一對(duì)多聯(lián)系
如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中有n個(gè)實(shí)體(n≥0)與之聯(lián)系,反之,對(duì)于實(shí)體集B中的每一個(gè)實(shí)體,實(shí)體集A中至多只有一個(gè)實(shí)體與之聯(lián)系,則稱實(shí)體集A與實(shí)體集B有一對(duì)多聯(lián)系,記為1:n
實(shí)例
班級(jí)與學(xué)生之間的聯(lián)系:
一個(gè)班級(jí)中有若干名學(xué)生,
每個(gè)學(xué)生只在一個(gè)班級(jí)中學(xué)習(xí)
數(shù)據(jù)模型
多對(duì)多聯(lián)系(m:n)
如果對(duì)于實(shí)體集A中的每一個(gè)實(shí)體,實(shí)體集B中有n個(gè)實(shí)體(n≥0)與之聯(lián)系,反之,對(duì)于實(shí)體集B中的每一個(gè)實(shí)體,實(shí)體集A中也有m個(gè)實(shí)體(m≥0)與之聯(lián)系,則稱實(shí)體集A與實(shí)體B具有多對(duì)多聯(lián)系。記為m:n
實(shí)例
課程與學(xué)生之間的聯(lián)系:
一門課程同時(shí)有若干個(gè)學(xué)生選修
一個(gè)學(xué)生可以同時(shí)選修多門課程
數(shù)據(jù)模型
多個(gè)實(shí)體間的聯(lián)系
數(shù)據(jù)模型
概念模型的表示方法-E - R圖(Entity-Relationship Approach)
用E-R圖來描述現(xiàn)實(shí)世界的概念模型
E-R方法也稱為E-R模型
實(shí)體型
用矩形表示,矩形框內(nèi)寫明實(shí)體名。
數(shù)據(jù)模型
屬性
用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)體連接起來
數(shù)據(jù)模型
聯(lián)系
聯(lián)系本身:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實(shí)體連接起來,同時(shí)在無向邊旁標(biāo)上聯(lián)系的類型(1:1、1:n或m:n)
聯(lián)系的屬性:聯(lián)系本身也是一種實(shí)體型,也可以有屬性。如果一個(gè)聯(lián)系具有屬性,則這些屬性也要用無向邊與該聯(lián)系連接起來
數(shù)據(jù)模型
數(shù)據(jù)模型
數(shù)據(jù)模型
數(shù)據(jù)模型
數(shù)據(jù)模型
E-R圖實(shí)例(1)
數(shù)據(jù)模型
E-R圖實(shí)例(2)-工廠物資管理概念模型
首先確定實(shí)體類型。本問題有三個(gè)實(shí)體類型:零件PART,工程項(xiàng)目PROJECT,零件供應(yīng)商SUPPLIER。
確定聯(lián)系類型。PROJECT和PART之間是M:N聯(lián)系,PART和SUPPLIER之間也是M:N聯(lián)系,分別命名為P_P和P_S.
把實(shí)體類型和聯(lián)系類型組合成ER圖。
確定實(shí)體類型和聯(lián)系類型的屬性。
確定實(shí)體類型的鍵,在ER圖中屬于碼的屬性名下畫一條橫線。
數(shù)據(jù)模型
常用的數(shù)據(jù)模型
實(shí)體-聯(lián)系方法是抽象和描述現(xiàn)實(shí)世界的有力工具。用E-R圖表示的概念模型獨(dú)立于具體的DBMS所支持的數(shù)據(jù)模型,是各種數(shù)據(jù)模型的共同基礎(chǔ)。
常用的數(shù)據(jù)模型
層次模型
網(wǎng)狀模型
關(guān)系模型
對(duì)象模型
數(shù)據(jù)模型
數(shù)據(jù)模型的組成要素
數(shù)據(jù)結(jié)構(gòu)是所研究的對(duì)象類型的集合;
1.與數(shù)據(jù)類型、內(nèi)容、性質(zhì)有關(guān)的對(duì)象;
2.與數(shù)據(jù)之間聯(lián)系有關(guān)的對(duì)象。
數(shù)據(jù)操作是指對(duì)數(shù)據(jù)庫中各種對(duì)象的實(shí)例允許執(zhí)行的操作的集合。包括操作及有關(guān)的操作規(guī)則(檢索和更新兩類);
數(shù)據(jù)的約束條件是完整性規(guī)則的集合。
數(shù)據(jù)及其聯(lián)系所具有的制約和依存規(guī)則的。
常用的數(shù)據(jù)模型
層次模型
滿足下面兩個(gè)條件的基本層次聯(lián)系的集合為層次模型。
1. 有且只有一個(gè)結(jié)點(diǎn)沒有雙親結(jié)點(diǎn),這個(gè)結(jié)點(diǎn)稱為根結(jié)點(diǎn)
2. 根以外的其它結(jié)點(diǎn)有且只有一個(gè)雙親結(jié)點(diǎn)
層次模型中的幾個(gè)術(shù)語
根結(jié)點(diǎn),雙親結(jié)點(diǎn),兄弟結(jié)點(diǎn),葉結(jié)點(diǎn)
常用的數(shù)據(jù)模型
層次模型
有且僅有一個(gè)結(jié)點(diǎn)無雙親,這個(gè)結(jié)點(diǎn)稱為根結(jié)點(diǎn)。
其它結(jié)點(diǎn)有且僅有一個(gè)雙親。