




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、第第2章章 導讀導讀第第2章章 數(shù)據(jù)模型數(shù)據(jù)模型2.3 層次層次(邏輯邏輯)數(shù)據(jù)模型數(shù)據(jù)模型 表示方法表示方法 結(jié)點:記錄類型結(jié)點:記錄類型 每個記錄類型包含若干個字段每個記錄類型包含若干個字段( (屬性屬性) ) 聯(lián)系:用結(jié)點之間的有向線表示記錄類聯(lián)系:用結(jié)點之間的有向線表示記錄類型之間的型之間的1:N1:N的聯(lián)系,箭頭表示從箭尾的記的聯(lián)系,箭頭表示從箭尾的記錄類型到箭頭的記錄類型間聯(lián)系是錄類型到箭頭的記錄類型間聯(lián)系是1:N1:N聯(lián)系。聯(lián)系。系系 名系 號系 主 任地 點 4 4個記錄型組成的個記錄型組成的層次數(shù)據(jù)庫模型層次數(shù)據(jù)庫模型 教員學生層次數(shù)據(jù)庫的一個值教員學生層次數(shù)據(jù)庫的一個值層次
2、數(shù)據(jù)模型的優(yōu)點:層次數(shù)據(jù)模型的優(yōu)點: 層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)比較簡單清晰;層次數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)比較簡單清晰; 記錄之間的聯(lián)系可通過指針來實現(xiàn),查詢記錄之間的聯(lián)系可通過指針來實現(xiàn),查詢效率較高。效率較高。層次數(shù)據(jù)模型的缺點:層次數(shù)據(jù)模型的缺點: 只能直接表示一對多的聯(lián)系,不能直接表只能直接表示一對多的聯(lián)系,不能直接表達多對多的聯(lián)系;達多對多的聯(lián)系; 查詢子女結(jié)點必須通過父結(jié)點;查詢子女結(jié)點必須通過父結(jié)點; 對插入、刪除有完整性限制。對插入、刪除有完整性限制。2.4 2.4 網(wǎng)狀數(shù)據(jù)模型網(wǎng)狀數(shù)據(jù)模型 網(wǎng)狀數(shù)據(jù)模型是一種用有向圖表示數(shù)網(wǎng)狀數(shù)據(jù)模型是一種用有向圖表示數(shù)據(jù)及數(shù)據(jù)之間聯(lián)系的數(shù)據(jù)模型。滿足
3、以下?lián)皵?shù)據(jù)之間聯(lián)系的數(shù)據(jù)模型。滿足以下條件:條件: 允許一個以上的結(jié)點無雙親;允許一個以上的結(jié)點無雙親; 一個結(jié)點可以有多于一個的雙親。一個結(jié)點可以有多于一個的雙親。 表示方法表示方法( (與層次數(shù)據(jù)模型相同與層次數(shù)據(jù)模型相同) ) 結(jié)點:記錄類型結(jié)點:記錄類型 每個記錄類型包含若干個字段每個記錄類型包含若干個字段( (屬性屬性) ) 聯(lián)系:用結(jié)點之間的有向線表示記錄類型聯(lián)系:用結(jié)點之間的有向線表示記錄類型 之間的之間的1:N1:N聯(lián)系聯(lián)系( (系系) ),箭頭表示從箭尾的記,箭頭表示從箭尾的記錄類型到箭頭的記錄類型間聯(lián)系是錄類型到箭頭的記錄類型間聯(lián)系是1:N1:N。學生和課程間的學生和課程
4、間的M:NM:N聯(lián)系,通過引入聯(lián)系記聯(lián)系,通過引入聯(lián)系記錄錄“選課選課”,分解為兩個,分解為兩個1:N1:N聯(lián)系。見下圖聯(lián)系。見下圖 學生學生記錄記錄課程課程記錄記錄選課選課記錄記錄網(wǎng)狀數(shù)據(jù)模型的優(yōu)點:網(wǎng)狀數(shù)據(jù)模型的優(yōu)點: 不同記錄之間的聯(lián)系通過指針,查詢效率較高;不同記錄之間的聯(lián)系通過指針,查詢效率較高; 能夠更為直接地描述現(xiàn)實世界,如一個結(jié)點可以能夠更為直接地描述現(xiàn)實世界,如一個結(jié)點可以有多個雙親;有多個雙親;M:NM:N聯(lián)系也容易實現(xiàn)(一個聯(lián)系也容易實現(xiàn)(一個M:NM:N聯(lián)系聯(lián)系可拆成兩個可拆成兩個1:N1:N聯(lián)系)。聯(lián)系)。網(wǎng)狀數(shù)據(jù)模型的缺點:網(wǎng)狀數(shù)據(jù)模型的缺點: 結(jié)構(gòu)比較復雜;結(jié)構(gòu)比
5、較復雜; DDLDDL、DMLDML復雜,且要嵌入到某一高級語言中;復雜,且要嵌入到某一高級語言中; 應用程序在訪問數(shù)據(jù)時必須選擇適當?shù)拇嫒÷窂?,應用程序在訪問數(shù)據(jù)時必須選擇適當?shù)拇嫒÷窂剑又亓司幊特摀?。加重了編程負擔?.5 2.5 關系數(shù)據(jù)模型關系數(shù)據(jù)模型 關系數(shù)據(jù)模型是目前使用最廣泛關系數(shù)據(jù)模型是目前使用最廣泛的一種數(shù)據(jù)模型。利用二維表表示數(shù)的一種數(shù)據(jù)模型。利用二維表表示數(shù)據(jù)和數(shù)據(jù)間的聯(lián)系。據(jù)和數(shù)據(jù)間的聯(lián)系。2.3.1 2.3.1 關系關系(a) (b)部門關系表部門關系表2.3.1 2.3.1 關系關系( (續(xù)續(xù)) )關系術語關系術語一般表格的術語一般表格的術語關系名關系名表名表名關
6、系模式關系模式表頭表頭( (表格的描述表格的描述) )關系關系一張二維表一張二維表元組元組記錄或行記錄或行屬性屬性列列屬性名屬性名列名列名屬性值屬性值列值列值分量分量( (元組中的一個元組中的一個屬性值屬性值) )一條記錄中的一個列值一條記錄中的一個列值非規(guī)范關系非規(guī)范關系表中有表表中有表( (大表中嵌有小表大表中嵌有小表) )術語對比術語對比2.3.2 關系的鍵關系的鍵/碼(碼(KeyKey) 超鍵超鍵/ /超碼超碼(Super Key)(Super Key) 如果關系的某一個屬性或?qū)傩越M的值能夠惟如果關系的某一個屬性或?qū)傩越M的值能夠惟一地決定關系中其它所有屬性的值,而其任何真一地決定關系中
7、其它所有屬性的值,而其任何真子集也具有此性質(zhì),則這個屬性或?qū)傩越M稱為該子集也具有此性質(zhì),則這個屬性或?qū)傩越M稱為該關系的超鍵。關系的超鍵。 候選鍵候選鍵/ /候選碼候選碼(Candidate Key)(Candidate Key) 如果關系的某一個屬性或?qū)傩越M的值能夠惟如果關系的某一個屬性或?qū)傩越M的值能夠惟一地決定關系中其它所有屬性的值,而其任何真一地決定關系中其它所有屬性的值,而其任何真子集無此性質(zhì),則這個屬性或?qū)傩越M稱為該關系子集無此性質(zhì),則這個屬性或?qū)傩越M稱為該關系的候選鍵。的候選鍵。 主鍵主鍵(Prime Key)(Prime Key)和候補鍵和候補鍵(Candidate(Candida
8、te Key)Key) 一個關系的候選鍵可能有多個。選中一個作一個關系的候選鍵可能有多個。選中一個作為關系的鍵,也稱主鍵,其它則稱候補鍵。每個為關系的鍵,也稱主鍵,其它則稱候補鍵。每個元組的主鍵值是惟一的。元組的主鍵值是惟一的。 全鍵全鍵(All Key)(All Key) 一個關系的鍵如果由關系的所有屬性組成,一個關系的鍵如果由關系的所有屬性組成,則該鍵稱為全鍵。則該鍵稱為全鍵。 外鍵外鍵(Extern Key)(Extern Key) 如果一個關系中的屬性如果一個關系中的屬性( (組組) )是其它關系的鍵是其它關系的鍵或本關系的鍵,則該屬性組稱為外鍵?;虮娟P系的鍵,則該屬性組稱為外鍵。 關
9、系數(shù)據(jù)模型中,表與表之間是通過外鍵關系數(shù)據(jù)模型中,表與表之間是通過外鍵發(fā)生聯(lián)系的。發(fā)生聯(lián)系的。 例如,部門表的主鍵是部門號,外鍵是負例如,部門表的主鍵是部門號,外鍵是負責人(來自于職工表的職工號)。職工表責人(來自于職工表的職工號)。職工表的主鍵是職工號,外鍵是部門號(來自于的主鍵是職工號,外鍵是部門號(來自于部門表的部門號)。部門表和職工表通過部門表的部門號)。部門表和職工表通過外鍵發(fā)生外鍵發(fā)生1:N1:N聯(lián)系。聯(lián)系。 2.4.3 關系的主屬性和非主屬性關系的主屬性和非主屬性 主屬性主屬性(Prime Attribute)(Prime Attribute) 包含在候選鍵中的屬性,都稱為主屬性
10、。上包含在候選鍵中的屬性,都稱為主屬性。上述部門表中部門號是候選鍵,職工表中職工號是述部門表中部門號是候選鍵,職工表中職工號是候選鍵,所以這兩張表的主屬性是部門號、職工候選鍵,所以這兩張表的主屬性是部門號、職工號。號。 非主屬性非主屬性(Nonprime Attribute)(Nonprime Attribute) 一個關系中,不含在候選鍵中的屬性,稱為一個關系中,不含在候選鍵中的屬性,稱為非主屬性。上述部門表和職工表中,除了部門號非主屬性。上述部門表和職工表中,除了部門號和職工號以外,其他屬性都是非主屬性。和職工號以外,其他屬性都是非主屬性。 2.5.4 2.5.4 關系的完整性約束關系的完
11、整性約束三個方面的完整性約束:三個方面的完整性約束:(1 1)實體完整性)實體完整性 每一個關系都有一個用來惟一識別一個元組每一個關系都有一個用來惟一識別一個元組的主鍵。因此,的主鍵。因此,主鍵的值不能為空主鍵的值不能為空,否則無法區(qū),否則無法區(qū)分和識別元組,這就是實體完整性約束。分和識別元組,這就是實體完整性約束。(2 2)引用完整性)引用完整性( (參照完整性參照完整性) ) 如果一個表中存在外鍵,則如果一個表中存在外鍵,則外鍵的值必須外鍵的值必須是已存在的,或者為空。是已存在的,或者為空。(3 3)用戶定義的完整性約束)用戶定義的完整性約束 用戶定義完整性約束是最簡單、最基用戶定義完整性
12、約束是最簡單、最基本的約束,它本的約束,它表示關系中屬性的取值應是表示關系中屬性的取值應是給定域中的值。給定域中的值。 如,成績在如,成績在0 0100100內(nèi);性別只能取男內(nèi);性別只能取男或女;屬性的值能否為空等,由數(shù)據(jù)的語或女;屬性的值能否為空等,由數(shù)據(jù)的語義決定。義決定。2.5.5 2.5.5 關系數(shù)據(jù)模型的特點關系數(shù)據(jù)模型的特點關系數(shù)據(jù)模型的優(yōu)點:關系數(shù)據(jù)模型的優(yōu)點: 數(shù)據(jù)和數(shù)據(jù)間的聯(lián)系都用關系來表示,使得數(shù)據(jù)數(shù)據(jù)和數(shù)據(jù)間的聯(lián)系都用關系來表示,使得數(shù)據(jù)描述一致;描述一致; 數(shù)據(jù)結(jié)構(gòu)單一,容易修改;數(shù)據(jù)結(jié)構(gòu)單一,容易修改; 存取路徑對用戶透明,減輕了編程負擔。存取路徑對用戶透明,減輕了編
13、程負擔。關系數(shù)據(jù)模型的缺點:關系數(shù)據(jù)模型的缺點: 查詢效率不如非關系數(shù)據(jù)模型,但可以通過查詢查詢效率不如非關系數(shù)據(jù)模型,但可以通過查詢的優(yōu)化來提高查詢效率;的優(yōu)化來提高查詢效率; 表與表之間的聯(lián)系不是很直觀表與表之間的聯(lián)系不是很直觀 。2.6 2.6 面向?qū)ο髷?shù)據(jù)模型面向?qū)ο髷?shù)據(jù)模型 OODM(Object-oriented Data Model)OODM(Object-oriented Data Model)是繼是繼RDMRDM之后重要的之后重要的DMDM。 支持支持OODMOODM的數(shù)據(jù)庫管理系統(tǒng)就是的數(shù)據(jù)庫管理系統(tǒng)就是OODBMS(OODBMS(是一個持久的、可共享的對象庫的存儲者是一個
14、持久的、可共享的對象庫的存儲者) )。對象數(shù)據(jù)庫是由一個對象數(shù)據(jù)庫是由一個OOOO模型所定義的對象的集合體。模型所定義的對象的集合體。 2.6.1 OO2.6.1 OO模型的核心概念模型的核心概念 OOOO核心概念構(gòu)成了核心概念構(gòu)成了OOOO模型的基礎,核心概念模型的基礎,核心概念有如下有如下4 4個:個: 1.1.對象對象(Object )(Object ) 對象是由一組屬性和施加于這組屬性的一組操對象是由一組屬性和施加于這組屬性的一組操作封裝起來的基本單位。是對客觀事物的描述和表示。作封裝起來的基本單位。是對客觀事物的描述和表示。 屬性是用來描述對象靜態(tài)特征的一個數(shù)據(jù)項。屬性是用來描述對象
15、靜態(tài)特征的一個數(shù)據(jù)項。2.6 2.6 面向?qū)ο髷?shù)據(jù)模型面向?qū)ο髷?shù)據(jù)模型( (續(xù)續(xù)) ) 操作是用來描述對象動態(tài)特征的一個動作序操作是用來描述對象動態(tài)特征的一個動作序列。列。 2.2.對象標識對象標識(Object Identifier,OID)(Object Identifier,OID) OODB OODB中的每個對象都有一個唯一的不變的標中的每個對象都有一個唯一的不變的標識稱為對象標識。識稱為對象標識。 3.3.封裝封裝(Encapsulation)(Encapsulation) 封裝就是把對象的屬性和操作結(jié)合成一個獨封裝就是把對象的屬性和操作結(jié)合成一個獨立的系統(tǒng)單位;并盡可能隱蔽對象的內(nèi)
16、部細節(jié)立的系統(tǒng)單位;并盡可能隱蔽對象的內(nèi)部細節(jié)( (對對象的外部不能直接存取對象的屬性象的外部不能直接存取對象的屬性) )。2.6 面向?qū)ο髷?shù)據(jù)模型面向?qū)ο髷?shù)據(jù)模型(續(xù)續(xù)) 4. 4.類類(Class)(Class) 類是具有相同屬性和操作的一組對象的類是具有相同屬性和操作的一組對象的抽象抽象( (描述描述) )。 對象和類是具體與抽象的關系,一個對對象和類是具體與抽象的關系,一個對象又稱為類的一個實例。象又稱為類的一個實例。 面向?qū)ο髷?shù)據(jù)庫模式面向?qū)ο髷?shù)據(jù)庫模式是類的集合。是類的集合。2.6 面向?qū)ο髷?shù)據(jù)模型面向?qū)ο髷?shù)據(jù)模型(續(xù)續(xù))2.6.2 2.6.2 繼承繼承(Inheritance)(
17、Inheritance) 在在OODMOODM中,用類中,用類層次結(jié)構(gòu)描述客觀事層次結(jié)構(gòu)描述客觀事物及其聯(lián)系。右圖給物及其聯(lián)系。右圖給出了學校數(shù)據(jù)庫的一出了學校數(shù)據(jù)庫的一個類層次。個類層次。2.6 2.6 面向?qū)ο髷?shù)據(jù)模型面向?qū)ο髷?shù)據(jù)模型( (續(xù)續(xù)) )2.6.3 2.6.3 繼承繼承 的形式的形式 在在OODMOODM中,支中,支持兩種繼承:持兩種繼承:單繼承和多繼單繼承和多繼承。右圖是一承。右圖是一個多繼承結(jié)構(gòu)。個多繼承結(jié)構(gòu)。人人教職員工教職員工學生學生教員教員行政人員行政人員在職研究生在職研究生多繼承結(jié)構(gòu)多繼承結(jié)構(gòu)2.6.4 2.6.4 對象的嵌套對象的嵌套 OODMOODM允許對象的嵌套,即一個對象由允許對象的嵌套,即一個對象由一個或多個子對象組成,形成復雜對象的一個或多個子對象組成,形成復雜對象的嵌套層次結(jié)構(gòu)。嵌套層次結(jié)構(gòu)。2.6 2.6 面向?qū)ο髷?shù)據(jù)模型面向?qū)ο髷?shù)據(jù)模型( (續(xù)續(xù)) )2.6 2.6 面向?qū)ο髷?shù)據(jù)模型面向?qū)ο髷?shù)據(jù)模型( (續(xù)續(xù)) )汽車汽車發(fā)動機型號、馬力發(fā)動機型號、馬力型號、名稱、型號、名稱、發(fā)動機發(fā)動機、車體車體、車輪、車輪鋼板厚度、鋼板型號、車體形狀鋼板厚度、鋼板型號、車體形狀汽車的嵌套結(jié)構(gòu)汽車的嵌套結(jié)構(gòu)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 肢體離斷應急處理
- 請求帳篷報告范文
- 欠費報告范文
- 二零二五年度未婚父母放棄撫養(yǎng)權(quán)及子女撫養(yǎng)費支付協(xié)議
- 2025年度車輛報廢回收抵押借款合同
- 二零二五年度夫妻離婚協(xié)議書及財產(chǎn)分割及子女撫養(yǎng)權(quán)及撫養(yǎng)金及贍養(yǎng)費及債務處理及子女教育及共同財產(chǎn)及子女撫養(yǎng)協(xié)議書
- 2025年度旅游酒店委托經(jīng)營管理協(xié)議
- 2025年度汽車行業(yè)信息化建設與系統(tǒng)集成服務合同模板
- 二零二五年度魚塘承包與漁業(yè)生態(tài)補償協(xié)議
- 二零二五年度醫(yī)藥行業(yè)員工競業(yè)禁止補償金及解約合同
- 修建水壩施工合同模板
- 劍橋商務英語中級unit12
- 北師大版三年級下冊除法豎式計算題練習100道及答案
- 十堰2024年湖北十堰市茅箭區(qū)教育局所屬學校招聘教師134人筆試歷年典型考題及考點附答案解析
- 小白兔拔蘿卜(無背景音樂)
- 人音版六年級下冊音樂教案及反思
- 北琪射頻控溫熱凝器(李健洪)
- 四年級上冊豎式計算100題及答案
- 結(jié)構(gòu)化在崗帶教手冊模板2.0
- 管道支吊架安裝工程標準圖冊直接參考使用
- 建筑施工新進員工三級安全教育培訓課件
評論
0/150
提交評論