目前,資料庫領域中最常用的資料模型有:
- 層次模型
- 網狀模型
- 關系模型
- 面向對象模型
- 對象關系模型
其中層次模型與網狀模型統稱為格式化模型。
諸多資料模型中,關系模型是目前最重要的一種模型。下面來詳述一下關系模型的資料結構。
一、關系模型的資料結構
關系模型與以往的模型不同,它是建立在嚴格的數學概念的基礎上。沒給個關系的資料結構是一張規範的二維表。現在以學生登記表為例,介紹關系模型中的一些術語。
- 關系:一個關系對應通常說的一張表。
- 元組:表中的一行即為一個元組;
- 屬性表中的一個列即為一個屬性,給每一個屬性起一個名稱即屬性名。
- 碼:也成為碼鍵。表中的某個屬性組,他可以唯一确定一個元組。
- 域:屬性的取值範圍
- 分量:元組中的一個屬性值;
-
關系模式:對關系的描述一般表示為:關系名(屬性1,屬性2,屬性3,…,屬性n)
在關系模式中,實體以及實體之間都是用關系表示的。例如,學生、課程、學生與課程之間的多對多聯系在關系模型中可以如下表示:
學生(學号,姓名,年齡,性别,系名,年級)
課程(課程号,課程名,學分)
選修(學号,課程号,成績)
關系模式要求關系必須是規範化的,即要求關系必須滿足一定的規範條件,這些規範條件中最基本的一條就是,關系的每一個分量必須是一個不可分資料項,也就是說,不允許表中還有表。
二、關系資料模型的操縱與完整性限制條件
關系資料模型的操作主要包括查詢、插入、删除和更新資料。這些操作必須滿足關系的完整性性限制條件。關系的完整性限制條件包括:實體完整性,參照完整性和使用者自定義完整性。
三、關系資料模型的存儲結構
在關系模型資料庫中,實體及實體間的聯系都用表來表示。
四、關系資料模型的優缺點
關系資料模型具有以下優缺點:
1. 關系模型與格式化模型不同它是建立在嚴格的數學概念基礎上的。
2. 關系模型的概念單一。
3. 關系模型的存取路徑對使用者透明,進而具有更高的資料獨立性、更好的安全保密性,也簡化了程式員的工作和資料庫開發建立的工作。