三種數據模型
- 概念模型
- 邏輯模型
- 物理模型
概念模型 Conceptual Model
概念模型是描述信息世界的模型,也稱信息模型,它是按用戶的觀點來對數據和信息建模。概念模型屬于高層數據模型,是獨立于具體的計算機系統和DBMS的,通常用于數據庫設計。
邏輯模型 Logical Model
邏輯模型屬于機器世界的模型,與具體的計算機系統相關。邏輯模型按照計算機系統的觀點對數據建模,主要用于DBMS的實現。
物理模型 Physical Model
物理模型也屬于機器世界的模型,與具體的計算機系統相關。物理模型用以描述數據在系統內部的表示方式和存取方法,以及在物理存儲介質上的組織結構和存取方法。
E-R模型
Entity-Relationship方法是最廣泛被采用的概念模型設計方法,由P.P.S.Chen于1976年提出的。E-R方法采用E-R圖來描述現實世界的概念模型。采用E-R方法設計的概念模型稱為E-R模型。
E-R模型包括:
- 實體 Entity
- 屬性 Attribute
- 聯系 Relationship
實體 Entity: 客觀存在并可相互區分的事物稱為實體。
屬性 Attribute: 指實體所具有的某一特征稱為屬性。
域 Domain:屬性的取值范圍。
鍵 Key:唯一標識實體的屬性集稱為鍵
實體型 Entity Type:具有相同屬性的實體必然具有相同的特征和性質。
實體集 Entity Set:同型實體組成的集合稱為實體集。
E-R圖
- 實體用矩形表示
- 屬性用橢圓表示,出現在鍵中的屬性,屬性名字帶有下劃線
- 聯系用菱形表示,聯系可能具有屬性
聯系類型:
一對一聯系(1:1)
一對多聯系(1:n)
多對多聯系(m:n)
舉個栗子:
邏輯模型
邏輯模型是按照數據的組織方式來描述信息的,實際上數據庫中的數據就是按照邏輯模型進行描述、組織和存儲的。通常所說的數據模型指的是邏輯模型。現有的數據庫系統都是基于某種數據模型的。
數據模型的組成要素
- 數據結構
- 數據操作
- 完整性約束
數據結構
數據結構是數據模型的基本成分。它規定如何把基本數據項組織成大的數據的單位,并描述數據之間的聯系。
數據操作
數據操作是指對數據庫中各種對象和實例允許執行的數據庫操作或推導規則,是系統動態特性的描述。
數據庫中主要有檢索(查詢)和更新(包括插入、刪除和修改)兩大類操作。
完整性約束
數據的完整性約束是一組完整性規則的集合。完整性規則是給定的數據模型中的數據及其聯系鎖滿足的制約和依存規則,用以明確或隱含地定義正確的數據庫狀態或狀態變化,以保證數據的正確、有效和相容。
主要的數據模型
- 層次模型 Hierarchical Model
- 網狀模型 Network Model
- 關系模型 Relational Model
- 面向對象模型 Object-Oriented Model
- 對象關系模型 Object Relational Model
術語
- 關系:一個關系就是一張二維表
- 元組:表中的一行即為一個元組
- 屬性:表中的一列即為屬性
- 域:屬性的取值范圍稱為該屬性的域
- 鍵:也稱之為碼,是表中的某個屬性或屬性組,它可以唯一地確定標識一個元組。
- 關系模式:關系模式是對關系的描述,可以看作是二維表的表頭結構。通常關系模式的描述形式為:關系名(屬性1,屬性2,...,屬性n)。
說明
關系模型要求關系必須是規范化的,要滿足一定的規范條件。最基本的規范條件是:關系中的每一個分量都是不可再分的數據項,意即表中不能再有表。