第13講數(shù)據(jù)模型及范式_第1頁
第13講數(shù)據(jù)模型及范式_第2頁
第13講數(shù)據(jù)模型及范式_第3頁
第13講數(shù)據(jù)模型及范式_第4頁
第13講數(shù)據(jù)模型及范式_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、. 問題的提出問題的提出(重點(diǎn),難點(diǎn))(重點(diǎn),難點(diǎn)) 數(shù)據(jù)模型數(shù)據(jù)模型(重點(diǎn),難點(diǎn))(重點(diǎn),難點(diǎn))課堂小結(jié)課堂小結(jié)第第13講講 數(shù)據(jù)模型和規(guī)范化數(shù)據(jù)模型和規(guī)范化.數(shù)據(jù)模型(續(xù))數(shù)據(jù)模型分成兩個(gè)不同的層次(1) 概念模型概念模型 也稱信息模型,它是按用戶的觀點(diǎn)來對(duì)數(shù)據(jù)和也稱信息模型,它是按用戶的觀點(diǎn)來對(duì)數(shù)據(jù)和信息建模。信息建模。 (2) 數(shù)據(jù)模型數(shù)據(jù)模型 主要包括網(wǎng)狀模型、層次模型、關(guān)系模型等,主要包括網(wǎng)狀模型、層次模型、關(guān)系模型等,它是按計(jì)算機(jī)系統(tǒng)的觀點(diǎn)對(duì)數(shù)據(jù)建模它是按計(jì)算機(jī)系統(tǒng)的觀點(diǎn)對(duì)數(shù)據(jù)建模。. 客觀對(duì)象的抽象過程-兩步抽象 現(xiàn)實(shí)世界中的客觀對(duì)象抽象為概念模型;現(xiàn)實(shí)世界中的客觀對(duì)象抽象為概

2、念模型; 把概念模型轉(zhuǎn)換為某一把概念模型轉(zhuǎn)換為某一DBMS支持的數(shù)據(jù)模型。支持的數(shù)據(jù)模型。 概念模型是現(xiàn)實(shí)世界到機(jī)器世界的一個(gè)中間層次。數(shù)據(jù)模型(續(xù)). 概念模型的用途 概念模型用于信息世界的建模概念模型用于信息世界的建模 是現(xiàn)實(shí)世界到機(jī)器世界的一個(gè)中間層次是現(xiàn)實(shí)世界到機(jī)器世界的一個(gè)中間層次 是數(shù)據(jù)庫設(shè)計(jì)的有力工具是數(shù)據(jù)庫設(shè)計(jì)的有力工具 數(shù)據(jù)庫設(shè)計(jì)人員和用戶之間進(jìn)行交流的語言數(shù)據(jù)庫設(shè)計(jì)人員和用戶之間進(jìn)行交流的語言 對(duì)概念模型的基本要求 較強(qiáng)的語義表達(dá)能力,能夠方便、直接地表達(dá)應(yīng)用較強(qiáng)的語義表達(dá)能力,能夠方便、直接地表達(dá)應(yīng)用中的各種語義知識(shí)中的各種語義知識(shí) 簡(jiǎn)單、清晰、易于用戶理解簡(jiǎn)單、清晰、易

3、于用戶理解數(shù)據(jù)模型-概念模型(續(xù)).實(shí)體聯(lián)系方法(E-R方法) 用E-R圖來描述現(xiàn)實(shí)世界的概念模型 E-R方法也稱為E-R模型數(shù)據(jù)模型-概念模型的表示方法 .數(shù)據(jù)模型-信息世界基本概念(1) 實(shí)體(Entity) 客觀存在并可相互區(qū)別的事物稱為實(shí)體??陀^存在并可相互區(qū)別的事物稱為實(shí)體??梢允蔷唧w的人、事、物或抽象的概念可以是具體的人、事、物或抽象的概念。(2) 屬性(Attribute) 實(shí)體所具有的某一特性稱為屬性。實(shí)體所具有的某一特性稱為屬性。一個(gè)實(shí)體可以由若干個(gè)屬性來刻畫。一個(gè)實(shí)體可以由若干個(gè)屬性來刻畫。 (3)聯(lián)系(Relationship) 現(xiàn)實(shí)世界中事物內(nèi)部以及事物之間的聯(lián)系在信息

4、世界現(xiàn)實(shí)世界中事物內(nèi)部以及事物之間的聯(lián)系在信息世界中反映為實(shí)體內(nèi)部的聯(lián)系和實(shí)體之間的聯(lián)系中反映為實(shí)體內(nèi)部的聯(lián)系和實(shí)體之間的聯(lián)系. 實(shí)體型 用矩形表示,矩形框內(nèi)寫明實(shí)體名。 屬性 用橢圓形表示,并用無向邊將其與相應(yīng)的實(shí)體連接起來數(shù)據(jù)模型-概念模型的表示方法 學(xué)生學(xué)生教師教師學(xué)生學(xué)生學(xué)號(hào)學(xué)號(hào)年齡年齡性別性別姓名姓名.聯(lián)系 聯(lián)系本身:用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向用菱形表示,菱形框內(nèi)寫明聯(lián)系名,并用無向邊分別與有關(guān)實(shí)體連接起來,同時(shí)在無向邊旁標(biāo)上聯(lián)系的邊分別與有關(guān)實(shí)體連接起來,同時(shí)在無向邊旁標(biāo)上聯(lián)系的類型(類型(1:1、1:n或或m:n) 聯(lián)系的屬性:聯(lián)系本身也是一種實(shí)體型,也可以有屬性。

5、聯(lián)系本身也是一種實(shí)體型,也可以有屬性。如果一個(gè)聯(lián)系具有屬性,則這些屬性也要用無向邊與該聯(lián)如果一個(gè)聯(lián)系具有屬性,則這些屬性也要用無向邊與該聯(lián)系連接起來系連接起來數(shù)據(jù)模型-概念模型的表示方法 .一對(duì)一聯(lián)系 班級(jí)與班長之間的聯(lián)系:班級(jí)與班長之間的聯(lián)系: 一個(gè)班級(jí)只有一個(gè)正班長一個(gè)班級(jí)只有一個(gè)正班長 一個(gè)班長只在一個(gè)班中任職一個(gè)班長只在一個(gè)班中任職數(shù)據(jù)模型-兩個(gè)實(shí)體之間的聯(lián)系 .一對(duì)多聯(lián)系 班級(jí)與學(xué)生之間的聯(lián)系:班級(jí)與學(xué)生之間的聯(lián)系: 一個(gè)班級(jí)中有若干名學(xué)生,一個(gè)班級(jí)中有若干名學(xué)生, 每個(gè)學(xué)生只在一個(gè)班級(jí)中學(xué)習(xí)每個(gè)學(xué)生只在一個(gè)班級(jí)中學(xué)習(xí)數(shù)據(jù)模型-兩個(gè)實(shí)體之間的聯(lián)系 .多對(duì)多聯(lián)系(m:n) 課程與學(xué)生之

6、間的聯(lián)系:課程與學(xué)生之間的聯(lián)系: 一門課程同時(shí)有若干個(gè)學(xué)生選修一門課程同時(shí)有若干個(gè)學(xué)生選修 一個(gè)學(xué)生可以同時(shí)選修多門課程一個(gè)學(xué)生可以同時(shí)選修多門課程數(shù)據(jù)模型-兩個(gè)實(shí)體之間的聯(lián)系 .數(shù)據(jù)模型-概念模型的表示方法 班級(jí)班級(jí)班長班長111:1聯(lián)系聯(lián)系課程課程選修選修學(xué)生學(xué)生mnm:n聯(lián)系聯(lián)系班級(jí)班級(jí)學(xué)生學(xué)生1n1:n聯(lián)系聯(lián)系.數(shù)據(jù)模型-概念模型的表示方法 課程課程選修選修學(xué)生學(xué)生mn成績(jī)成績(jī).數(shù)據(jù)模型-E-R圖實(shí)例 學(xué)校有若干系組成;每個(gè)系有若干教研室和若干學(xué)生,班級(jí)組成;并開設(shè)多門課程;每個(gè)教研室有多名教師組成;每個(gè)教師有自己的研究方向和所教授的課程;每個(gè)班級(jí)有若干學(xué)生組成。 每個(gè)學(xué)生需要修學(xué)多門

7、課程,每個(gè)教師可以教授多門課程,一門課程可以有多個(gè)教師講解,每個(gè)教師開設(shè)的課程必須同時(shí)有多個(gè)學(xué)生選課。. 在這個(gè)例子中,我們看到,現(xiàn)實(shí)世界中存在許多事物。例如,學(xué)生學(xué)生、教師教師、教研室教研室、系系、班級(jí)班級(jí)、課程課程等,這些都是客觀存在的實(shí)體。這些實(shí)體并不是孤立存在的,不同的實(shí)體之間是有聯(lián)系的,這種聯(lián)系也是客觀存在的。 比如,教師屬于某個(gè)系的某個(gè)教研室,而且只能隸屬于一個(gè)教研室,學(xué)生和教師通過選修課程建立聯(lián)系。請(qǐng)同學(xué)們畫出教學(xué)管理系統(tǒng)的E-R模型圖。數(shù)據(jù)模型-E-R圖實(shí)例 .學(xué)生學(xué)生課程課程班級(jí)班級(jí)系系教研室教研室教師教師學(xué)號(hào)學(xué)號(hào)班級(jí)號(hào)班級(jí)號(hào)姓名姓名班級(jí)號(hào)班級(jí)號(hào)選修選修成績(jī)成績(jī)課程號(hào)課程號(hào)學(xué)

8、號(hào)學(xué)號(hào)課程號(hào)課程號(hào)系號(hào)系號(hào)系號(hào)系號(hào)系號(hào)系號(hào)教研室號(hào)教研室號(hào)教研室號(hào)教研室號(hào)教師號(hào)教師號(hào)教學(xué)教學(xué)課程號(hào)課程號(hào)教師號(hào)教師號(hào)實(shí)體-關(guān)系圖。實(shí)體:學(xué)生、教師、教研室、系、班級(jí)、課程.該教學(xué)管理系統(tǒng)中的關(guān)系數(shù)據(jù)模型的實(shí)體類型:系(系號(hào),系名,電話,地址)教研室(教研室號(hào),教研室名,人數(shù), 電話,地址,系號(hào))課程(課程號(hào),課程名, 學(xué)分,開課系號(hào)) 授課(授課編號(hào),教師編號(hào),課程號(hào))班級(jí)(班號(hào),班名,人數(shù), 電話,系號(hào))學(xué)生(學(xué)號(hào),姓名,性別,年齡, 班號(hào))教師(教師編號(hào),姓名, 性別, 教研室號(hào),電話,地址)選課(學(xué)號(hào),授課編號(hào), 成績(jī))數(shù)據(jù)模型-E-R圖實(shí)例 .關(guān)系(Relation) 一個(gè)關(guān)系對(duì)應(yīng)通

9、常說的一張表。元組(Tuple) 表中的一行即為一個(gè)元組。屬性(Attribute) 表中的一列即為一個(gè)屬性,給每一個(gè)屬性起一個(gè)名稱即屬性名。關(guān)系模型- 基本概念 .主鍵(碼)(Key) 表中的某個(gè)屬性組,它可以唯一確定一個(gè)元組。域(Domain) 屬性的取值范圍。分量 元組中的一個(gè)屬性值。關(guān)系模型- 基本概念 .關(guān)系模式 對(duì)關(guān)系的描述 關(guān)系名(屬性1,屬性2,屬性n)例如,描述學(xué)生的關(guān)系模式為:學(xué)生(學(xué)號(hào),姓名,年齡,性別,系,年級(jí))關(guān)系模型- 基本概念 .關(guān)系數(shù)據(jù)庫邏輯設(shè)計(jì)關(guān)系數(shù)據(jù)庫邏輯設(shè)計(jì) 針對(duì)具體問題,如何構(gòu)造一個(gè)適合于它的數(shù)據(jù)模式 數(shù)據(jù)庫邏輯設(shè)計(jì)的工具關(guān)系數(shù)據(jù)庫的規(guī)范化理論關(guān)系規(guī)范-

10、問題的提出 .學(xué)校數(shù)據(jù)庫的語義:學(xué)校數(shù)據(jù)庫的語義: 一個(gè)系有若干學(xué)生, 一個(gè)學(xué)生只屬于一個(gè)系; 一個(gè)系的學(xué)生住在同一住處; 一個(gè)學(xué)生可以選修多門課程, 每門課程有若干學(xué)生選修; 每個(gè)學(xué)生所學(xué)的每門課程都有一個(gè)成績(jī)。關(guān)系規(guī)范-問題的提出.關(guān)系規(guī)范-問題的提出例如 ,描述學(xué)校的數(shù)據(jù)庫:學(xué)生的學(xué)號(hào)(Sno)、所在系(Sdept)學(xué)生住處(Sloc)、課程號(hào)(Cno)成績(jī)(Grade)單一的關(guān)系模式 : Student Student(Sno, Sdept, Mname, Cname, Grade ). 數(shù)據(jù)冗余太大 浪費(fèi)大量的存儲(chǔ)空間 例:每一個(gè)系的學(xué)生住處重復(fù)出現(xiàn) 更新異常(Update Anom

11、alies) 數(shù)據(jù)冗余 ,更新數(shù)據(jù)時(shí),維護(hù)數(shù)據(jù)完整性代價(jià)大。例:某系更換學(xué)生住處后,系統(tǒng)必須修改與該系學(xué)生有關(guān)的每一個(gè)元組數(shù)據(jù)模型-關(guān)系模式存在的問題. 插入異常(Insertion Anomalies) 該插的數(shù)據(jù)插不進(jìn)去 例,如果一個(gè)系剛成立,尚無學(xué)生,我們就無法把這個(gè)系及其該系的住處的信息存入數(shù)據(jù)庫。 刪除異常(Deletion Anomalies) 不該刪除的數(shù)據(jù)被刪除了 例,如果某個(gè)系的學(xué)生全部畢業(yè)了, 我們?cè)趧h除該系學(xué)生信息的同時(shí),把這個(gè)系及其學(xué)生住處的信息也丟掉了。數(shù)據(jù)模型-關(guān)系模式存在的問題.結(jié)論: Student關(guān)系模式不是一個(gè)好的模式。 “好”的模式:不會(huì)發(fā)生插入異常、刪除

12、異常、更新異常,數(shù)據(jù)冗余應(yīng)盡可能少。原因:由存在于模式中的某些數(shù)據(jù)依賴引起的解決方法:通過分解關(guān)系模式來消除其中不合適的數(shù)據(jù)依賴。數(shù)據(jù)模型-關(guān)系模式存在的問題. 規(guī)范化理論 是用來改造關(guān)系模式,通過分解關(guān)系模式來消除其中不合適的數(shù)據(jù)依賴,以解決插入異常、刪除異常、更新異常和數(shù)據(jù)冗余問題。關(guān)系規(guī)范化 . 1NF的定義如果一個(gè)關(guān)系模式R的所有屬性都是不可分的基本數(shù)據(jù)項(xiàng),則R1NF。關(guān)系規(guī)范化-1NF. 第一范式是對(duì)關(guān)系模式的最起碼的要求。不滿足第一范式的數(shù)據(jù)庫模式不能稱為關(guān)系數(shù)據(jù)庫。Student關(guān)系模式符合1NF 但是滿足第一范式的關(guān)系模式并不一定是一個(gè)好的關(guān)系模式。關(guān)系規(guī)范化-1NF. 2NF

13、的定義若關(guān)系模式R1NF,并且每一個(gè)非主非主屬性都完全完全函數(shù)依賴于R的碼,則R2NF。例:Student(Sno, Sdept, Sloc, Cno, Grade) 1NF關(guān)系規(guī)范化-2NF.例: 關(guān)系模式 Student(Sno, Sdept, Sloc, Cno, Grade) 函數(shù)依賴包括: (Sno, Cno) f Grade Sno Sdept (Sno, Cno) P Sdept Sno Sloc (Sno, Cno) P Sloc Sdept Sloc關(guān)系規(guī)范化-2NF. Student的碼為(Sno, Cno) Student滿足第一范式。 非主屬性Sdept和Sloc部分函

14、數(shù)依賴于碼(Sno, Cno)關(guān)系規(guī)范化-2NFSnoCnoGradeSdeptSlocStudent. Student(Sno, Sdept, Sloc, Cno, Grade) 不屬于2NF分解關(guān)系模式Student SC(Sno, Cno, Grade) 2NF SL(Sno, Sdept, Sloc) 2NF關(guān)系規(guī)范化-2NF. 若R3NF,則R的每一個(gè)非主屬性既不部分函數(shù)依賴于候選碼也不傳遞函數(shù)依賴于候選碼。 如果R3NF,則R也是2NF。 SC( Sno, Cno, Grade) 3NF SL(Sno, Sdept, Sloc) 2NF關(guān)系規(guī)范化-3NF.在 2NF關(guān)系模式SL(Sno, Sdept, Sloc)中存在 函數(shù)依賴: SnoSdept SdeptSloc SnoSlocSloc傳遞函數(shù)依賴于Sno,即SL中存在非主屬性對(duì)碼的傳遞函數(shù)依賴。關(guān)系規(guī)范化-3NF. 關(guān)系規(guī)范化-3NFn原因原因 Sdept、 Sloc部分函數(shù)依賴于碼。n解決方法解決方法 SLC分解為兩個(gè)關(guān)系模式,以消除這些部分函數(shù)依賴 SC(Sno, Cno, Grade) SL(Sno, Sdept, Sloc). 解決方法把SL分解為兩個(gè)關(guān)系模式,以消除傳遞函數(shù)依賴: SD(Sno, Sdept) DL(Sdept, Sloc)SD的碼為Sno, DL的碼為Sdept。關(guān)系規(guī)范化-3NF

溫馨提示

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

評(píng)論

0/150

提交評(píng)論