版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第第2 2章章 數據庫模型數據庫模型 第第2講講 數據模型數據模型回顧 數據庫的發(fā)展歷史 數據庫的基本概念 數據庫系統(tǒng)組成 數據庫系統(tǒng)的體系結構第第2講講 數據模型數據模型 數據庫 數據庫是長期存儲在計算機內、有組織的、統(tǒng)數據庫是長期存儲在計算機內、有組織的、統(tǒng)一管理的、可共享的相關大量數據的集合。一管理的、可共享的相關大量數據的集合。 數據庫中的數據按一定的數據庫中的數據按一定的數據模型數據模型組織、描述組織、描述和存儲,具有較小的冗余度、較高的數據獨立和存儲,具有較小的冗余度、較高的數據獨立性和易擴展性,并可為多用戶共享。性和易擴展性,并可為多用戶共享?;仡櫟诘?講講 數據模型數據模型2
2、數據模型 概念模型 數據模型關系模型關系模型半結構化數據模型半結構化數據模型面向對象數據模型面向對象數據模型第第2講講 數據模型數據模型2.1現(xiàn)實世界客觀對象的抽象過程 模型( Model)對現(xiàn)實世界中某個對象進行建模,對對現(xiàn)實世界中某個對象進行建模,對其特征進行抽象和模擬的工具。其特征進行抽象和模擬的工具。第第2講講 數據模型數據模型2.1現(xiàn)實世界客觀對象的抽象過程 對事物不同抽象層次中的對象采用不同的模型進行描述。物理模型物理模型第第2講講 數據模型數據模型2.1現(xiàn)實世界客觀對象的抽象過程 概念模型概念模型(Conceptual Model)用于信息世界的建模,是對現(xiàn)實世界用于信息世界的建
3、模,是對現(xiàn)實世界的第一層抽象,它是按用戶的觀點來的第一層抽象,它是按用戶的觀點來對信息建模。對信息建模。概念模型通過各種概念來描述現(xiàn)實世概念模型通過各種概念來描述現(xiàn)實世界的事物以及事物之間的聯(lián)系。界的事物以及事物之間的聯(lián)系。 是數據庫設計人員與用戶之間進行交是數據庫設計人員與用戶之間進行交流的工具。流的工具。第第2講講 數據模型數據模型2.1現(xiàn)實世界客觀對象的抽象過程 數據模型(邏輯數據模型數據模型(邏輯數據模型Logical Data Model)是事物以及事物之間聯(lián)系的數據描述是事物以及事物之間聯(lián)系的數據描述,是概念模型的數據化。,是概念模型的數據化。數據模型是按計算機的觀點對數據建數據模
4、型是按計算機的觀點對數據建模,提供了表示和組織數據的方法。模,提供了表示和組織數據的方法。第第2講講 數據模型數據模型2.1現(xiàn)實世界客觀對象的抽象過程 物理模型物理模型(Physical Model)是對數據最底層的抽象,它描述數據是對數據最底層的抽象,它描述數據在系統(tǒng)內部的表示方式和存取方法,在系統(tǒng)內部的表示方式和存取方法,如數據在磁盤上的存儲方式和存取方如數據在磁盤上的存儲方式和存取方法。法。是面向計算機系統(tǒng)的,由是面向計算機系統(tǒng)的,由DBMS具體具體實現(xiàn)。實現(xiàn)。第第2講講 數據模型數據模型102.1現(xiàn)實世界客觀對象的抽象過程數據庫設計人員數據庫設計人員數據庫設計人員數據庫設計人員(利用數
5、據庫設(利用數據庫設計工具)計工具)第第2講講 數據模型數據模型2.2 概念模型 概念模型(Conceptual Model) 概念模型是從現(xiàn)實世界中抽取出對于一個概念模型是從現(xiàn)實世界中抽取出對于一個目標應用系統(tǒng)來說最有用的事物、事物特目標應用系統(tǒng)來說最有用的事物、事物特征以及事物之間的聯(lián)系,通過各種概念精征以及事物之間的聯(lián)系,通過各種概念精確地加以描述。確地加以描述。第第2講講 數據模型數據模型122.2 概念模型 概念模型 數據庫設計人員進行數據庫設計的有力工具。數據庫設計人員進行數據庫設計的有力工具。 數據庫設計人員與用戶之間進行交流的語言。數據庫設計人員與用戶之間進行交流的語言。 應具
6、有應具有較強的語義表達能力,能夠方便、直接的表較強的語義表達能力,能夠方便、直接的表達應用中的各種語義知識達應用中的各種語義知識; 應該簡單、清晰,易于用戶理解應該簡單、清晰,易于用戶理解; 概念模型的表示方法很多,最為著名的是實體概念模型的表示方法很多,最為著名的是實體-聯(lián)系(聯(lián)系(Entity Relationship)方法。)方法。 第第2講講 數據模型數據模型2.2 概念模型 概念模型實體實體(Entity) 現(xiàn)實世界中客觀存在并能相互區(qū)分的事物經現(xiàn)實世界中客觀存在并能相互區(qū)分的事物經過加工,抽象成為信息世界的實體。過加工,抽象成為信息世界的實體。 實體是信息世界的基本單位??梢允蔷唧w
7、的實體是信息世界的基本單位??梢允蔷唧w的,也可以是抽象的。,也可以是抽象的。 第第2講講 數據模型數據模型 概念模型 屬性屬性(Attribute) 現(xiàn)實世界的事物所具有的特征在概念模型中通過與現(xiàn)實世界的事物所具有的特征在概念模型中通過與其對應的實體上反映出來,稱之為屬性。其對應的實體上反映出來,稱之為屬性。 是實體所具有的一個特征,用屬性名表示。是實體所具有的一個特征,用屬性名表示。 一個實體可以由若干屬性來刻畫一個實體可以由若干屬性來刻畫 屬性的相關概念屬性的相關概念 屬性值、屬性域屬性值、屬性域 簡單屬性(原子屬性)和復合屬性簡單屬性(原子屬性)和復合屬性 單值屬性和多值屬性單值屬性和多
8、值屬性 存儲屬性(基本屬性)和派生屬性(導出屬性)。存儲屬性(基本屬性)和派生屬性(導出屬性)。2.2 概念模型第第2講講 數據模型數據模型2.2 概念模型 概念模型 域(域(Domain) 屬性的取值范圍稱為該屬性的域。屬性的取值范圍稱為該屬性的域。 關鍵字關鍵字(key,碼,碼) 能唯一標識實體的最小屬性集。每一個實體能唯一標識實體的最小屬性集。每一個實體集一定有關鍵字。集一定有關鍵字。第第2講講 數據模型數據模型2.2 概念模型 概念模型 實體型實體型(Entity Type) 用實體名及其屬性名集合來抽象和刻畫同類用實體名及其屬性名集合來抽象和刻畫同類實體,稱為實體型。實體,稱為實體型
9、。 學員(學號,姓名,性別,出生日期,所在系)學員(學號,姓名,性別,出生日期,所在系) 實體集實體集(Entity Set) 同一類型實體值的集合稱為實體集。同一類型實體值的集合稱為實體集。 全體學員全體學員第第2講講 數據模型數據模型2.2 概念模型 概念模型 聯(lián)系(聯(lián)系(Relationship) 現(xiàn)實世界中事物彼此的聯(lián)系在概念模型中反現(xiàn)實世界中事物彼此的聯(lián)系在概念模型中反映為實體間的聯(lián)系。映為實體間的聯(lián)系。 聯(lián)系的形式聯(lián)系的形式 實體集內的聯(lián)系實體集內的聯(lián)系 實體集間的聯(lián)系實體集間的聯(lián)系第第2講講 數據模型數據模型2.2 概念模型 概念模型聯(lián)系聯(lián)系 聯(lián)系的元數:聯(lián)系的元數:與一個聯(lián)系有
10、關的實體的個數。與一個聯(lián)系有關的實體的個數。一元聯(lián)系、二元聯(lián)系和多元聯(lián)系一元聯(lián)系、二元聯(lián)系和多元聯(lián)系 多種聯(lián)系:多種聯(lián)系:兩個實體集中有多個二元聯(lián)系。兩個實體集中有多個二元聯(lián)系。 包含聯(lián)系:包含聯(lián)系:兩個實體兩個實體X和和Y,若實體,若實體X是是Y的子的子類,則稱類,則稱Y包含包含X,或,或X包含于包含于Y。第第2講講 數據模型數據模型2.2 概念模型 概念模型聯(lián)系聯(lián)系 兩個實體集間的二元聯(lián)系類型兩個實體集間的二元聯(lián)系類型ABABABABABAB(a) 1:1(b) 1:n(c) m:n第第2講講 數據模型數據模型2.3 數據模型 數據模型實現(xiàn)了信息世界向計算機世界的過渡數據模型應該滿足三方面
11、的要求數據模型應該滿足三方面的要求 比較真實地模擬現(xiàn)實世界;比較真實地模擬現(xiàn)實世界; 容易為人所理解;容易為人所理解; 便于在計算機上實現(xiàn)。便于在計算機上實現(xiàn)。第第2講講 數據模型數據模型2.3 數據模型 數據模型的概念數據模型是嚴格定義的一組概念的集合數據模型是嚴格定義的一組概念的集合 概念精確地描述了系統(tǒng)的靜態(tài)特性、動態(tài)特概念精確地描述了系統(tǒng)的靜態(tài)特性、動態(tài)特性和完整性約束條件。性和完整性約束條件。 數據模型的組成要素數據結構、數據操作和完整性約束數據結構、數據操作和完整性約束第第2講講 數據模型數據模型2.3 數據模型 數據模型的組成要素 數據結構數據結構 數據結構描述數據庫的組成對象以
12、及對象之間的聯(lián)數據結構描述數據庫的組成對象以及對象之間的聯(lián)系。系。 是所描述的對象類型的集合,是對系統(tǒng)靜態(tài)特性的是所描述的對象類型的集合,是對系統(tǒng)靜態(tài)特性的描述。描述。 通常按照數據結構的類型來命名數據模型。通常按照數據結構的類型來命名數據模型。層次結構層次結構層次模型層次模型網狀結構網狀結構網狀模型網狀模型關系結構關系結構關系模型關系模型 第第2講講 數據模型數據模型2.3 數據模型 數據模型的組成要素 數據操作數據操作 是指對數據庫中各種對象(型)的實例(值)允許是指對數據庫中各種對象(型)的實例(值)允許執(zhí)行的操作及操作規(guī)則的集合。執(zhí)行的操作及操作規(guī)則的集合。 是對系統(tǒng)動態(tài)特性的描述。是
13、對系統(tǒng)動態(tài)特性的描述。 主要有查詢和更新(插入、刪除和修改)兩大類操主要有查詢和更新(插入、刪除和修改)兩大類操作。作。 數據模型必須定義這些操作的確切含義、操作符號、操數據模型必須定義這些操作的確切含義、操作符號、操作規(guī)則(如優(yōu)先級)以及作規(guī)則(如優(yōu)先級)以及實現(xiàn)操作的語言實現(xiàn)操作的語言。第第2講講 數據模型數據模型2.3 數據模型 數據模型的組成要素 數據的完整性約束數據的完整性約束 是一組完整性規(guī)則。是一組完整性規(guī)則。 是給定的數據模型中數據及其聯(lián)系所具有的制約和是給定的數據模型中數據及其聯(lián)系所具有的制約和依存關系,用以限定符合數據模型的數據庫狀態(tài)以依存關系,用以限定符合數據模型的數據庫
14、狀態(tài)以及狀態(tài)的變化,以保證數據的正確、有效、相容。及狀態(tài)的變化,以保證數據的正確、有效、相容。 數據模型應該反映和規(guī)定本數據模型必須遵守的數據模型應該反映和規(guī)定本數據模型必須遵守的基本的通基本的通用的用的完整性約束條件,還應該提供定義完整性約束條件的完整性約束條件,還應該提供定義完整性約束條件的機制,以反映具體應用所涉及的數據必須遵守的機制,以反映具體應用所涉及的數據必須遵守的特定的特定的語語義約束條件。義約束條件。 第第2講講 數據模型數據模型2.3數據模型 數據模型的演變是數據庫技術發(fā)展的一條主線 19681968年美國年美國IBMIBM公司推出層次模型的公司推出層次模型的IMSIMS系統(tǒng)
15、系統(tǒng) 。 19691969年美國年美國CODASYLCODASYL組織發(fā)布了組織發(fā)布了DBTGDBTG報告,提出報告,提出網狀模型。網狀模型。 19701970年美國年美國IBMIBM公司的公司的E.F.CoddE.F.Codd 連續(xù)發(fā)表論文連續(xù)發(fā)表論文,提出關系模型。,提出關系模型。 2020世紀世紀8080年代以來,面向對象的數據模型得到年代以來,面向對象的數據模型得到研究和發(fā)展。許多研究和發(fā)展。許多RDBMSRDBMS廠商推出了其產品的對廠商推出了其產品的對象象- -關系版本,或關系版本,或OODBMSOODBMS原型系統(tǒng)。原型系統(tǒng)。第第2講講 數據模型數據模型262.3 數據模型 數據
16、模型的演變是數據庫技術發(fā)展的一條主線 層次模型(層次模型(Hierarchical Model) 網狀模型(網狀模型(Network Model) 關系模型關系模型(Relational Model) 半結構化數據模型(半結構化數據模型(Semistructured-data Model) 面向對象模型(面向對象模型(Object Oriented Model) 對象關系模型(對象關系模型(Object Relational Model) 第第2講講 數據模型數據模型2.3.1 關系模型 層次數據模型 數據庫系統(tǒng)中最早出現(xiàn)的數據模型數據庫系統(tǒng)中最早出現(xiàn)的數據模型 層次數據模型是按照層次結構的形
17、式來組織數層次數據模型是按照層次結構的形式來組織數據的據的 層次數據庫的典型代表是層次數據庫的典型代表是1968年美國年美國IBM公司研發(fā)公司研發(fā)的數據庫管理系統(tǒng)的數據庫管理系統(tǒng)IMS(Information Management System)第第2講講 數據模型數據模型2.3.1 關系模型 層次數據模型 層次模型用樹形結構來表示各類實體以及實體層次模型用樹形結構來表示各類實體以及實體間的聯(lián)系。間的聯(lián)系。第第2講講 數據模型數據模型2.3.1 關系模型 層次數據模型 層次模型數據庫在內部級是按照有序樹結構來層次模型數據庫在內部級是按照有序樹結構來組織的,記錄之間的聯(lián)系通過指針來實現(xiàn)。組織的,
18、記錄之間的聯(lián)系通過指針來實現(xiàn)。 第第2講講 數據模型數據模型302.3.1 關系模型 層次數據模型 層次模型數據庫在內部級是按照有序樹結構來層次模型數據庫在內部級是按照有序樹結構來組織的,記錄之間的聯(lián)系通過指針來實現(xiàn)。組織的,記錄之間的聯(lián)系通過指針來實現(xiàn)。 第第2講講 數據模型數據模型2.3.1 關系模型 層次數據模型 數據庫的基本操作包括記錄的查詢、插入、刪數據庫的基本操作包括記錄的查詢、插入、刪除和修改等操作。類似于數據結構中對有序樹除和修改等操作。類似于數據結構中對有序樹的操作。的操作。 對于一個給定的記錄值,只有按其路徑查看,才能對于一個給定的記錄值,只有按其路徑查看,才能顯示出它的全
19、部意義。顯示出它的全部意義。 由于層次順序的嚴格和復雜,引起數據查詢和更新由于層次順序的嚴格和復雜,引起數據查詢和更新操作很復雜,應用程序編寫比較復雜。操作很復雜,應用程序編寫比較復雜。第第2講講 數據模型數據模型2.3.1 關系模型 層次數據模型 完整性約束要求除根記錄外,其他任何記錄必完整性約束要求除根記錄外,其他任何記錄必須具有一個父記錄。數據邏輯模式及其實例總須具有一個父記錄。數據邏輯模式及其實例總保持樹型結構。保持樹型結構。 插入一個記錄(除根記錄外)時,必須與其父記錄插入一個記錄(除根記錄外)時,必須與其父記錄相聯(lián)系,如果沒有相應的父結點就不能插入它的子相聯(lián)系,如果沒有相應的父結點
20、就不能插入它的子女結點值。女結點值。 刪除一個記錄時,其所有子女記錄也自動被刪除。刪除一個記錄時,其所有子女記錄也自動被刪除。第第2講講 數據模型數據模型2.3.1 關系模型 層次數據模型 優(yōu)點優(yōu)點 層次模型的數據結構比較簡單;層次模型的數據結構比較簡單; 層次數據庫的查詢效率高;層次數據庫的查詢效率高; 因記錄間的聯(lián)系用有向邊表示,在因記錄間的聯(lián)系用有向邊表示,在DBMSDBMS中用指針來實現(xiàn),中用指針來實現(xiàn),路徑明確,快速。路徑明確,快速。 層次模型提供了良好的完整性支持。層次模型提供了良好的完整性支持。第第2講講 數據模型數據模型342.3.1 關系模型 層次數據模型 缺點缺點 由于層次
21、順序的嚴格和復雜,引起數據查詢和更新由于層次順序的嚴格和復雜,引起數據查詢和更新操作很復雜,應用程序編寫比較復雜。操作很復雜,應用程序編寫比較復雜。 只能表示只能表示1:N的聯(lián)系,雖然有輔助手段實現(xiàn)的聯(lián)系,雖然有輔助手段實現(xiàn)M:N聯(lián)聯(lián)系,但較復雜,用戶不易掌握。系,但較復雜,用戶不易掌握。第第2講講 數據模型數據模型2.3.1 關系模型 網狀數據模型 采用網狀結構作為數據的組織方式。采用網狀結構作為數據的組織方式。 網狀數據庫系統(tǒng)的典型代表是網狀數據庫系統(tǒng)的典型代表是DBTG系統(tǒng),亦稱系統(tǒng),亦稱CODESYL系統(tǒng)。系統(tǒng)。 20世紀世紀70年代數據庫系統(tǒng)語言研究會(年代數據庫系統(tǒng)語言研究會(CO
22、DASYL)下屬的數據庫任務組(下屬的數據庫任務組(DBTG)提出的一個)提出的一個系統(tǒng)方案系統(tǒng)方案 DBTG系統(tǒng)提出的基本概念、方法和技術具有普遍意系統(tǒng)提出的基本概念、方法和技術具有普遍意義,對于網狀數據庫系統(tǒng)的研制和發(fā)展起了重大的影義,對于網狀數據庫系統(tǒng)的研制和發(fā)展起了重大的影響。響。 Cullinet Software公司的公司的IDMS、Univac公司的公司的DMS1100、Honeywell公司的公司的IDS/2、HP公司的公司的IMAGE等。等。第第2講講 數據模型數據模型2.3.1 關系模型 網狀數據模型 網狀模型是一種比層次模型更具普遍性的結構網狀模型是一種比層次模型更具普遍
23、性的結構 允許一個以上的結點沒有雙親結點允許一個以上的結點沒有雙親結點 一個節(jié)點可以有多于一個雙親節(jié)點一個節(jié)點可以有多于一個雙親節(jié)點 允許兩個節(jié)點之間有多種聯(lián)系允許兩個節(jié)點之間有多種聯(lián)系第第2講講 數據模型數據模型2.3.1 關系模型 網狀數據模型 數據庫的基本操作包括記錄的查詢、插入、數據庫的基本操作包括記錄的查詢、插入、刪除和修改等操作。其操作類似于數據結構刪除和修改等操作。其操作類似于數據結構中對圖的操作。中對圖的操作。 網狀數據模型記錄間的聯(lián)系比較復雜。它沒網狀數據模型記錄間的聯(lián)系比較復雜。它沒有層次模型那樣嚴格的完整性約束條件。具有層次模型那樣嚴格的完整性約束條件。具體的網狀數據庫系
24、統(tǒng)對數據操縱都加了一些體的網狀數據庫系統(tǒng)對數據操縱都加了一些限制,提供了一定的完整性約束。限制,提供了一定的完整性約束。第第2講講 數據模型數據模型2.3.1 關系模型 網狀數據模型 優(yōu)點優(yōu)點 能夠更為直接地描述現(xiàn)實世界,描述實體間多對多能夠更為直接地描述現(xiàn)實世界,描述實體間多對多的聯(lián)系;的聯(lián)系; 具有良好的性能,存儲效率比較高。具有良好的性能,存儲效率比較高。第第2講講 數據模型數據模型392.3.1 關系模型 網狀數據模型的優(yōu)缺點 缺點缺點 網狀模型的數據結構復雜,而且隨著應用環(huán)境的擴網狀模型的數據結構復雜,而且隨著應用環(huán)境的擴大,數據庫的結構會變得越來越復雜,不利于用戶大,數據庫的結構會
25、變得越來越復雜,不利于用戶使用和掌握。使用和掌握。 模型的模型的DDL和和DML復雜,嵌入到某一種高級語言中復雜,嵌入到某一種高級語言中后,用戶不容易掌握和使用。后,用戶不容易掌握和使用。 記錄之間的聯(lián)系是通過存取路經實現(xiàn)的,應用程序在訪問記錄之間的聯(lián)系是通過存取路經實現(xiàn)的,應用程序在訪問數據時必須選擇適當的存取方法。數據時必須選擇適當的存取方法。第第2講講 數據模型數據模型2.3.1 關系模型 關系數據模型 是由是由IBM的的E.F.Codd于于20世紀世紀70年代初提出的年代初提出的。 自自20世紀世紀80年代以來,計算機廠商推出的年代以來,計算機廠商推出的DBMS幾乎都支持關系模型,非關
26、系模型的產幾乎都支持關系模型,非關系模型的產品也大都加了關系接口。品也大都加了關系接口。 現(xiàn)在流行的數據庫系統(tǒng)大都是基于關系模型?,F(xiàn)在流行的數據庫系統(tǒng)大都是基于關系模型。數據庫領域當前的研究工作也都是以關系方法數據庫領域當前的研究工作也都是以關系方法為基礎的。為基礎的。第第2講講 數據模型數據模型2.3.1關系模型 關系數據模型 關系數據模型的數據結構建立在集合論中關系數據模型的數據結構建立在集合論中“關關系系”這個數學概念的基礎之上,有著嚴格的數這個數學概念的基礎之上,有著嚴格的數學基礎。學基礎。 從用戶觀點來看,每個關系可用一張二維表來從用戶觀點來看,每個關系可用一張二維表來描述。描述。
27、關系既可以表示實體也可以用來描述實體間的關系既可以表示實體也可以用來描述實體間的聯(lián)系。聯(lián)系。第第2講講 數據模型數據模型2.3.1關系模型學號學號姓名姓名 年齡年齡性別性別98001王丙王丙20男男98005李甲李甲21女女課程號課程號課程名課程名課時數課時數C601數據庫數據庫50C602數據結構數據結構70C603程序設計程序設計80學號學號課程名課程名成績成績98001數據庫數據庫6298001數據結構數據結構7398005程序設計程序設計80實體:學生實體:課程聯(lián)系:選課關系數據庫示例第第2講講 數據模型數據模型2.3.1關系模型 關系數據模型 對關系的操作主要是數據查詢和更新,關系中
28、對關系的操作主要是數據查詢和更新,關系中的數據操作是集合操作。的數據操作是集合操作。 關系的操作語言是高度非過程化的語言,用戶關系的操作語言是高度非過程化的語言,用戶只要指出干什么而不必詳細說明怎么干,用戶只要指出干什么而不必詳細說明怎么干,用戶對關系的操作非常簡單。對關系的操作非常簡單。 第第2講講 數據模型數據模型2.3.1關系模型 關系數據模型完整性約束完整性約束 實體完整性實體完整性 參照完整性參照完整性 用戶定義的完整性用戶定義的完整性第第2講講 數據模型數據模型2.3.1關系模型 關系模型的優(yōu)缺點優(yōu)點優(yōu)點 關系模型的概念單一,實體與實體間的聯(lián)系關系模型的概念單一,實體與實體間的聯(lián)系
29、均用關系來表示;均用關系來表示; 建立在嚴格的數學概念基礎上;建立在嚴格的數學概念基礎上; 數據的物理存儲和存取路徑對用戶透明,從數據的物理存儲和存取路徑對用戶透明,從而具有較高的數據獨立性、更好的安全保密而具有較高的數據獨立性、更好的安全保密性,便于數據庫的開發(fā);性,便于數據庫的開發(fā); 關系數據庫的語言是非過程化的。關系數據庫的語言是非過程化的。第第2講講 數據模型數據模型2.3.1關系模型 關系模型的優(yōu)缺點缺點缺點 由于存取路徑對用戶透明,由于存取路徑對用戶透明, 查詢效率往往不查詢效率往往不如非關系數據模型。如非關系數據模型。 為提高效率,關系數據庫管理系統(tǒng)必須對用為提高效率,關系數據庫
30、管理系統(tǒng)必須對用戶的查詢請求進行優(yōu)化,這樣增加了開發(fā)戶的查詢請求進行優(yōu)化,這樣增加了開發(fā)DBMS的難度。的難度。第第2講講 數據模型數據模型2.3.2 半結構化數據模型 半結構化數據(Semi-structured Data)模型 半結構數據是半結構數據是“無模式無模式”的,數據是自描的,數據是自描述(述(self describing)的。)的。 數據攜帶了關于其模式的信息,模式可以數據攜帶了關于其模式的信息,模式可以隨著時間在單一數據庫內任意改變,易于隨著時間在單一數據庫內任意改變,易于修改和變化。修改和變化。第第2講講 數據模型數據模型2.3.2 半結構化數據模型 半結構化數據模型 是一
31、種適于數據庫集成(是一種適于數據庫集成(integration)的)的數據模型,適于描述包含在兩個或多個數數據模型,適于描述包含在兩個或多個數據庫(這些數據庫含有不同模式的相似數據庫(這些數據庫含有不同模式的相似數據)中的數據。據)中的數據。 是一種標記服務的基礎模型,適于在是一種標記服務的基礎模型,適于在Web上共享信息。上共享信息。第第2講講 數據模型數據模型2.3.2 半結構化數據模型 半結構化數據模型 半結構化數據類似樹或圖,是結點(半結構化數據類似樹或圖,是結點(node)的)的集合。集合。 葉子結點(葉子結點(leaf)與具體數據相關,數據的類型可以)與具體數據相關,數據的類型可以
32、是任意原子類型,如數字和字符串。是任意原子類型,如數字和字符串。 內部結點(內部結點(interior)至少都有一條向外的弧。每條)至少都有一條向外的弧。每條弧都有一個標簽(弧都有一個標簽(label),該標簽指明弧開始處的結該標簽指明弧開始處的結點與弧末端的結點之間的關系。點與弧末端的結點之間的關系。 要有一個根(要有一個根(root)結點,它代表整個數據庫,每個)結點,它代表整個數據庫,每個結點都從根可達。結點都從根可達。第第2講講 數據模型數據模型2.3.2 半結構化數據模型 半結構化數據模型描述電影和影星的半結構化數據 第第2講講 數據模型數據模型512.3.2 半結構化數據模型 XM
33、L(Extensible Markup Language,可,可擴展標記語言)擴展標記語言) 一種基于標簽的、為了一種基于標簽的、為了“標記標記”文檔而設計的文檔而設計的符號語言,符號語言,XML標簽描述的是文檔各部分的含標簽描述的是文檔各部分的含義。義。 類似于類似于HTML,但是,但是HTML標簽描述的是文檔中信息標簽描述的是文檔中信息的表示方式的表示方式。第第2講講 數據模型數據模型522.3.2 半結構化數據模型 XML XML的標記實體是元素的標記實體是元素 一個元素包括開始標記、內容和結束標記。一個元素包括開始標記、內容和結束標記。 John 其中其中是開始標記,是開始標記,“Jo
34、hn”是內容,是內容,是結束是結束標記標記,“person”被稱為元素名或標記名。被稱為元素名或標記名。 元素名可以是幾乎任意給定的標志符(必須以字母元素名可以是幾乎任意給定的標志符(必須以字母、下劃線或冒號開頭,且開頭不能是、下劃線或冒號開頭,且開頭不能是“XML”及其變及其變化形式)化形式) 元素內容可以包含其他元素、文本或者它們的混合元素內容可以包含其他元素、文本或者它們的混合,也可以為空,即,也可以為空,即XML元素是可以嵌套的。因此子元素是可以嵌套的。因此子元素出現(xiàn)的順序是重要的。元素出現(xiàn)的順序是重要的。第第2講講 數據模型數據模型532.3.2 半結構化數據模型 XML XML的標
35、記實體是元素的標記實體是元素 元素可以帶有屬性,每個屬性是一個由屬性名、屬元素可以帶有屬性,每個屬性是一個由屬性名、屬性值構成的對性值構成的對 其中其中 “name”、“age” 就是屬性。就是屬性。 屬性和元素之間的區(qū)別僅僅是表示形式上的屬性和元素之間的區(qū)別僅僅是表示形式上的 25 元素的屬性是不能嵌套的,而且一個元素不能有兩元素的屬性是不能嵌套的,而且一個元素不能有兩個相同屬性名的屬性。個相同屬性名的屬性。第第2講講 數據模型數據模型542.3.2 半結構化數據模型一個關于影星和電影的XML文檔 第第2講講 數據模型數據模型552.3.2 半結構化數據模型 XML 為為XML提供模式定義的
36、方式主要有兩種:提供模式定義的方式主要有兩種: 文檔類型定義(文檔類型定義(document type definition,簡稱,簡稱DTD) XML模式(模式(XML Schema) 半結構化數據上的操作常常會涉及在隱含的樹結構中跟半結構化數據上的操作常常會涉及在隱含的樹結構中跟蹤路徑,從一個標簽元素開始跟蹤到它的一個或多個嵌蹤路徑,從一個標簽元素開始跟蹤到它的一個或多個嵌套子元素,然后再沿著路徑跟蹤嵌套在其中的子元素,套子元素,然后再沿著路徑跟蹤嵌套在其中的子元素,如此一直跟蹤下去。如此一直跟蹤下去。 半結構化數據上的約束包括定義與一個標簽相關聯(lián)的數半結構化數據上的約束包括定義與一個標簽
37、相關聯(lián)的數據值的類型,或確定標簽間的嵌套關系等。據值的類型,或確定標簽間的嵌套關系等。第第2講講 數據模型數據模型562.3.3 面向對象數據模型 面向對象數據模型(面向對象數據模型(object-oriented data model,簡稱簡稱OO data model) 吸收了概念數據模型和知識表示模型的一些基吸收了概念數據模型和知識表示模型的一些基本概念,同時又借鑒了面向對象程序設計語言本概念,同時又借鑒了面向對象程序設計語言和抽象數據類型的一些思想,是一種可擴充的和抽象數據類型的一些思想,是一種可擴充的數據模型。數據模型。 面向對象數據模型的基本概念是對象和類。面向對象數據模型的基本概
38、念是對象和類。第第2講講 數據模型數據模型572.3.3 面向對象數據模型 面向對象數據模型面向對象數據模型 對象、屬性和消息對象、屬性和消息 現(xiàn)實世界的任意實體都是對象?,F(xiàn)實世界的任意實體都是對象。 一個對象可以包含多個屬性,用來描述對象的狀態(tài)、組成和特一個對象可以包含多個屬性,用來描述對象的狀態(tài)、組成和特性。性。 對象還包括若干方法,用以描述對象的行為特性,通過方法可對象還包括若干方法,用以描述對象的行為特性,通過方法可以改變對象的狀態(tài),對對象進行各種數據庫操作。以改變對象的狀態(tài),對對象進行各種數據庫操作。 每個對象都有一個在系統(tǒng)內惟一不變的標志符,稱為對象標志每個對象都有一個在系統(tǒng)內惟一
39、不變的標志符,稱為對象標志符(符(object identifier,簡稱簡稱OID)。)。 對象是封裝的,對象之間的通信和面向對象程序設計中的通信對象是封裝的,對象之間的通信和面向對象程序設計中的通信機制相似,也是通過消息傳遞來實現(xiàn)的,即消息從外部傳遞給機制相似,也是通過消息傳遞來實現(xiàn)的,即消息從外部傳遞給對象,存取和調用對象中的屬性和方法,在內部執(zhí)行要求的操對象,存取和調用對象中的屬性和方法,在內部執(zhí)行要求的操作,操作的結果仍以消息的形式返回。作,操作的結果仍以消息的形式返回。 第第2講講 數據模型數據模型582.3.3 面向對象數據模型 面向對象數據模型面向對象數據模型 類(類(Class)和實例()和實例(instan
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度四方擔保企業(yè)信用貸款合同范本
- 二零二五年度產業(yè)園區(qū)合伙人入駐管理合同3篇
- 二零二五年度綠色節(jié)能門窗改造工程合同4篇
- 2025年度模特時尚產品代言合同4篇
- 二零二五年度土地承包權轉讓與農村產權交易服務合同范本
- 2025年度海上風電場建設與運維合同4篇
- 2025年度公共安全項目驗收流程及合同法應用要求3篇
- 二零二五年度企業(yè)年會主題服裝租賃合同協(xié)議書4篇
- 2025年度個人商標使用權授權委托合同3篇
- 2025年零星勞務合同模板:全新升級2篇
- 平安產險陜西省地方財政生豬價格保險條款
- 銅礦成礦作用與地質環(huán)境分析
- 30題紀檢監(jiān)察位崗位常見面試問題含HR問題考察點及參考回答
- 詢價函模板(非常詳盡)
- 《AI營銷畫布:數字化營銷的落地與實戰(zhàn)》
- 麻醉藥品、精神藥品、放射性藥品、醫(yī)療用毒性藥品及藥品類易制毒化學品等特殊管理藥品的使用與管理規(guī)章制度
- 一個28歲的漂亮小媳婦在某公司打工-被老板看上之后
- 乘務培訓4有限時間水上迫降
- 2023年低年級寫話教學評語方法(五篇)
- DB22T 1655-2012結直腸外科術前腸道準備技術要求
- GB/T 16474-2011變形鋁及鋁合金牌號表示方法
評論
0/150
提交評論