MySQL數(shù)據(jù)庫系統(tǒng)與應(yīng)用教程課件 第2章 關(guān)系模型和數(shù)據(jù)庫的設(shè)計(jì)_第1頁
MySQL數(shù)據(jù)庫系統(tǒng)與應(yīng)用教程課件 第2章 關(guān)系模型和數(shù)據(jù)庫的設(shè)計(jì)_第2頁
MySQL數(shù)據(jù)庫系統(tǒng)與應(yīng)用教程課件 第2章 關(guān)系模型和數(shù)據(jù)庫的設(shè)計(jì)_第3頁
MySQL數(shù)據(jù)庫系統(tǒng)與應(yīng)用教程課件 第2章 關(guān)系模型和數(shù)據(jù)庫的設(shè)計(jì)_第4頁
MySQL數(shù)據(jù)庫系統(tǒng)與應(yīng)用教程課件 第2章 關(guān)系模型和數(shù)據(jù)庫的設(shè)計(jì)_第5頁
已閱讀5頁,還剩59頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第2章關(guān)系模型和數(shù)據(jù)庫的設(shè)計(jì)學(xué)習(xí)目標(biāo):掌握關(guān)系模型的組成和結(jié)構(gòu),掌握關(guān)系代數(shù)基本運(yùn)算的方法,了解關(guān)系的完整性和約束,理解關(guān)系規(guī)范化理論基礎(chǔ),了解數(shù)據(jù)庫設(shè)計(jì)的步驟。2.1關(guān)系模型2.1.1關(guān)系模型的組成1.關(guān)系數(shù)據(jù)結(jié)構(gòu)2.關(guān)系操作集合3.關(guān)系完整性約束2.1關(guān)系模型2.1.2關(guān)系數(shù)據(jù)結(jié)構(gòu)1.關(guān)系的數(shù)學(xué)定義(1)域的定義定義域是一組具有相同數(shù)據(jù)類型的值的集合。例如,整數(shù)、正數(shù)、負(fù)數(shù)、{0,1}、{男,女}、{計(jì)算機(jī)專業(yè),物理專業(yè),外語專業(yè)}、計(jì)算機(jī)系所有學(xué)生的姓名等,都可以作為域。2.1關(guān)系模型(2)笛卡爾積的定義2.1關(guān)系模型2.1關(guān)系模型2.1關(guān)系模型(3)關(guān)系的定義2.1關(guān)系模型2.1關(guān)系模型2.關(guān)系中的基本名詞(1)元組關(guān)系表中的每一橫行稱作一個(gè)元組。(2)屬性關(guān)系中的每一列稱為一個(gè)屬性。(3)候選碼和主碼若關(guān)系中的某一屬性組(或單個(gè)屬性)的值能唯一地標(biāo)識一個(gè)元組,則稱該屬性組(或?qū)傩裕楹蜻x碼。2.1關(guān)系模型(4)全碼若關(guān)系的候選碼中只包含一個(gè)屬性,則稱它為單屬性碼;若候選碼是由多個(gè)屬性構(gòu)成的,則稱它為多屬性碼。若關(guān)系中只有一個(gè)候選碼,且這個(gè)候選碼中包括全部屬性,則這種候選碼為全碼。學(xué)生(學(xué)號,姓名,性別,年齡)借書(學(xué)號,書號,日期)學(xué)生選課(學(xué)號,課程)2.1關(guān)系模型(5)主屬性和非主屬性關(guān)系中,候選碼中的屬性稱為主屬性,不包含在任何候選碼中的屬性稱為非主屬性。2.1關(guān)系模型3.關(guān)系的性質(zhì)關(guān)系具有以下6個(gè)性質(zhì):(1)列是同質(zhì)的。(2)不同的列可出自同一個(gè)域。(3)列的順序無所謂。(4)任意兩個(gè)元組不能完全相同。(5)行的順序無所謂。(6)行列的交集稱為分量,每個(gè)分量的取值必須是原子值,即每一個(gè)分量都必須是不可分的數(shù)據(jù)項(xiàng),即每個(gè)屬性不能再分割。2.1關(guān)系模型2.2關(guān)系代數(shù)關(guān)系代數(shù)可分為傳統(tǒng)的集合運(yùn)算和專門的集合運(yùn)算兩類操作。(1)傳統(tǒng)的集合運(yùn)算將關(guān)系(二維表)看成是元組(記錄)的集合,其運(yùn)算是以關(guān)系的“水平”方向即行的角度來進(jìn)行運(yùn)算的。傳統(tǒng)的集合運(yùn)算符有:∪(并運(yùn)算),-(差運(yùn)算),∩(交運(yùn)算),×(廣義笛卡爾積)。2.2關(guān)系代數(shù)(2)專門的關(guān)系運(yùn)算將關(guān)系(二維表)看成是元組(記錄)或列(屬性)的集合。其運(yùn)算不僅可以從“水平”方向,還可以從“垂直”角度來進(jìn)行運(yùn)算。專門的關(guān)系運(yùn)算符有:σ(選擇)、Π(投影)、θ(,連接)、÷(除)。算術(shù)比較運(yùn)算符有:>(大于)、≥(大于等于)、<(小于)、≤(小于等于)、=(等于)、≠(不等于)。邏輯運(yùn)算符有:(非)、∧(與)、∨(或)。2.2關(guān)系代數(shù)2.2.1傳統(tǒng)的集合運(yùn)算1.并運(yùn)算2.2關(guān)系代數(shù)2.2關(guān)系代數(shù)2.差運(yùn)算【例2-5】Course1-Course2,結(jié)果見表2-8。2.2關(guān)系代數(shù)3.交運(yùn)算【例2-6】Course1∩Course2,結(jié)果見表2-9。2.2關(guān)系代數(shù)4.笛卡爾積運(yùn)算2.2關(guān)系代數(shù)2.2關(guān)系代數(shù)2.2.2專門的關(guān)系運(yùn)算1.選擇運(yùn)算2.2關(guān)系代數(shù)2.2關(guān)系代數(shù)2.2關(guān)系代數(shù)2.2關(guān)系代數(shù)2.投影運(yùn)算2.2關(guān)系代數(shù)2.2關(guān)系代數(shù)2.2關(guān)系代數(shù)3.連接運(yùn)算2.2關(guān)系代數(shù)2.2關(guān)系代數(shù)2.3關(guān)系的完整性和約束2.3.1關(guān)系的完整性1.實(shí)體完整性實(shí)體完整性規(guī)則規(guī)定基本關(guān)系的所有主碼對應(yīng)的主屬性都不能取空值。2.參照完整性參照完整性指被引用表中的主關(guān)鍵字和引用表中的外部主關(guān)鍵字之間的關(guān)系。3.域完整性域完整性是針對某一具體關(guān)系數(shù)據(jù)庫的約束條件,反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語義要求。2.3關(guān)系的完整性和約束2.3.2約束1.主鍵約束設(shè)置主鍵約束的字段稱為主鍵字段,主鍵約束可以保證數(shù)據(jù)的實(shí)體完整性。2.外鍵約束如果一個(gè)表中某個(gè)字段的數(shù)據(jù)只能取另一個(gè)表中某個(gè)字段值之一,則必須為該字段設(shè)置外鍵約束,外鍵約束可以保證數(shù)據(jù)的參照完整性和域完整性。2.3關(guān)系的完整性和約束3.唯一約束唯一約束可以指定一列數(shù)據(jù)或幾列數(shù)據(jù)的組合值在表中是唯一不能重復(fù)的。4.檢查約束檢查約束是用指定的條件(邏輯表達(dá)式)檢查限制輸入數(shù)據(jù)的取值范圍是否正確,用以保證數(shù)據(jù)的參照完整性和域完整性。2.3關(guān)系的完整性和約束5.默認(rèn)值約束(Default)默認(rèn)值約束是指給某個(gè)字段綁定一個(gè)默認(rèn)的初始值,輸入記錄時(shí)若沒有給出該字段的數(shù)據(jù),則自動填入默認(rèn)值以保證數(shù)據(jù)的域完整性。6.空值約束(Null)空值約束是指不知道或不能確定的特殊數(shù)據(jù)。2.4關(guān)系規(guī)范化理論基礎(chǔ)2.4.1關(guān)系范式的種類和規(guī)范化過程1.關(guān)系范式的種類第一范式(1NF)、第二范式(2NF)、第三范式(3NF),Boyce-Codd范式(BCNF),第四范式(4NF),第五范式(5NF)。2.4關(guān)系規(guī)范化理論基礎(chǔ)2.范式之間的關(guān)系及規(guī)范化過程1)1NF2)2NF3)3NF4)BCNF5)4NF1NF?2NF?3NF?BCNF?4NF?5NF。2.4關(guān)系規(guī)范化理論基礎(chǔ)2.4.2函數(shù)依賴1.函數(shù)依賴的定義2.4關(guān)系規(guī)范化理論基礎(chǔ)2.函數(shù)依賴中的術(shù)語和記號2.4關(guān)系規(guī)范化理論基礎(chǔ)3.其他依賴的定義2.4關(guān)系規(guī)范化理論基礎(chǔ)2.4.3范式1.第一范式(1NF)2.4關(guān)系規(guī)范化理論基礎(chǔ)【例2-13】職工表存儲了員工的基本信息,見表2-19。2.4關(guān)系規(guī)范化理論基礎(chǔ)2.第二范式(2NF)定義設(shè)有關(guān)系模式R是屬于1NF的關(guān)系模式,如果它的所有非主屬性都完全函數(shù)依賴碼,則稱R是2NF的關(guān)系模式,記為R∈2NF。2.4關(guān)系規(guī)范化理論基礎(chǔ)【例2-14】學(xué)生-課程表存儲了學(xué)生選修課程的信息,見表2-21。2.4關(guān)系規(guī)范化理論基礎(chǔ)2.4關(guān)系規(guī)范化理論基礎(chǔ)3.第三范式(3NF)2.4關(guān)系規(guī)范化理論基礎(chǔ)【例2-15】圖書表存儲了圖書的信息,見表2-24。2.4關(guān)系規(guī)范化理論基礎(chǔ)可以將表2-24分解為兩個(gè)表,見表2-25和表2-26。2.5數(shù)據(jù)庫設(shè)計(jì)的步驟2.5.1需求分析階段需求分析就是分析用戶對數(shù)據(jù)庫的具體要求,是整個(gè)數(shù)據(jù)庫設(shè)計(jì)的起點(diǎn)和基礎(chǔ)。2.5數(shù)據(jù)庫設(shè)計(jì)的步驟2.5.2概念結(jié)構(gòu)設(shè)計(jì)階段1.概念結(jié)構(gòu)設(shè)計(jì)的任務(wù)概念結(jié)構(gòu)設(shè)計(jì)就是將需求分析得到的信息抽象化為概念模型。2.5數(shù)據(jù)庫設(shè)計(jì)的步驟2.概念結(jié)構(gòu)設(shè)計(jì)的步驟(1)設(shè)計(jì)局部概念①確定數(shù)據(jù)庫需要的實(shí)體。②確定各個(gè)實(shí)體的屬性(包括每個(gè)實(shí)體的主屬性),以及與實(shí)體的聯(lián)系。③畫出局部E-R圖。2.5數(shù)據(jù)庫設(shè)計(jì)的步驟2.5數(shù)據(jù)庫設(shè)計(jì)的步驟(2)綜合成全局概念①確定各個(gè)實(shí)體之間的聯(lián)系。②畫出聯(lián)系,將局部E-R圖綜合起來。2.5數(shù)據(jù)庫設(shè)計(jì)的步驟2.5數(shù)據(jù)庫設(shè)計(jì)的步驟(3)評審評審需要根據(jù)用戶的整體需求來確定哪些數(shù)據(jù)或聯(lián)系是冗余的。2.5數(shù)據(jù)庫設(shè)計(jì)的步驟2.5.3邏輯結(jié)構(gòu)設(shè)計(jì)階段1.邏輯結(jié)構(gòu)設(shè)計(jì)的任務(wù)2.邏輯結(jié)構(gòu)設(shè)計(jì)的步驟2.5數(shù)據(jù)庫設(shè)計(jì)的步驟(1)將E-R圖轉(zhuǎn)換為關(guān)系模型①一個(gè)一對一聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式。②一個(gè)一對多聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式。③一個(gè)多對多聯(lián)系轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式。【例2-18】將圖2-3的E-R圖轉(zhuǎn)換為關(guān)系模型:關(guān)系A(chǔ)(X,Y,Z)關(guān)系B(M,N)關(guān)系C(K,L)(2)數(shù)據(jù)模型優(yōu)化為了進(jìn)一步提高數(shù)據(jù)庫應(yīng)用系統(tǒng)的性能,還應(yīng)該根據(jù)應(yīng)用需求適當(dāng)?shù)匦薷?、調(diào)整數(shù)據(jù)模型的結(jié)構(gòu)。這就是數(shù)據(jù)模型優(yōu)化。2.5數(shù)據(jù)庫設(shè)計(jì)的步驟2.5.4物理結(jié)構(gòu)設(shè)計(jì)階段1.物理結(jié)構(gòu)設(shè)計(jì)的任務(wù)2.物理結(jié)構(gòu)設(shè)計(jì)的步驟(1)

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論