您好,登錄后才能下訂單哦!
這篇文章主要介紹了數據庫的三種模型分別是什么,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
前言
數據模型是數據庫系統的核心,本文簡要介紹三種主要的數據庫模型。
一、格式化模型
格式化模型是層次模型和網狀模型的統稱
1.層次模型
① 層次數據模型的概念
層次模型用屬性結構來表示各類實體以及實體間的聯系
② 層次模型的數據結構
特點:
結點的雙親是唯一的;
只能直接處理一對多的實體聯系;
每個記錄類型可以定義一個排序段,也稱碼字段;
任何記錄值只有按其路徑查看時才能顯出它的全部意義;
沒有一個子女記錄值能夠脫離雙親記錄值而獨立存在。
③層次模型的數據操縱
查詢
插入
刪除
更新
④層次模型的完整性約束
無對應的雙親結點值就不能插入子女結點;
如果刪除雙親結點則相應的子女節點值也被同時刪除;
更新操作時,應更新所有相應記錄,以保證數據的一致性。
⑤層次模型的優缺點
優點
層次模型的數據結構比較簡單清晰;
查詢效率高,性能優于關系模型,不低于網狀模型;
層次數據模型提供了良好的完整性支持。
缺點
結點之間的多對多聯系表示不自然;
對插入和刪除操作的限制多,應用程序的編寫比較復雜;
查詢子女結點必須通過雙親結點;
層次命令趨于程序化;
2.網狀模型
①網狀模型的概念
網狀數據庫系統采用網狀模型作為數據的組織方式
?典型代表是DBTG系統:
■亦稱CODASYL系統
■20世紀70年代由DBTG提出的一個系統方案
必實際系統
■Cullinet Software公司的IDMS
■Univac公司的DMS1100
■Honeywell公司的IDS/2
■HP公司的IMAGE
②網狀模型的數據結構
滿足下面兩個條件的基本層次聯系的集合:
允許一個以上的結點無雙親;
一個結點可以有多于一個的雙親。
表示方法(與層次數據模型相同)
實體型:用記錄類型描述
每個結點表示-一個記錄類型(實體)
屬性:用字段描述
每個記錄類型可包含若千個字段
聯系:用結點之間的連線表示記錄類型(實體)之間的一對多的父子聯系
③網狀模型的操縱與完整性約束
網狀數據庫系統(如DBTG)對數據操縱加
了一些限制,提供了–定的完整性約束
■碼:唯一標識記錄的數據項的集合
■一個聯系中雙親記錄與子女記錄之間是一-對多聯系
■支持雙親記錄和子女記錄之間某些約束條件
④網狀模型的優缺點
優點
a.能夠更為直接地描述現實世界,如一個結點可以有多個雙親
b.具有良好地性,存取效率較高
缺點
a.結構比較復雜,而且隨著應用環境地擴大,數據庫就變得越來越復雜,不利于最終用戶掌握
b.DDL、DML語言復雜,用戶不容易使用
c.記錄之間聯系是通過存取路徑實現地,用戶必須了解系統結構地細節
3.網狀模型與層次模型的區別
■網狀模型允許多個結點沒有雙親結點
■網狀模型允許結點有多個雙親結點
■網狀模型允許兩個結點之間有多種聯系(復合聯系)
■網狀模型可以更直接地描述現實世界
■層次模型實際上是網狀模型的一一個特例
二、關系模型
①關系模型的概念
關系數據庫系統采用關系模型作為數據的組織方式
心970年美國IBM公司SanJose研究室的研究員E.F.Codd首次提出了數據庫系統的關系模型
計算機廠商新推出的數據庫管理系統幾乎都支持關系模型
②關系模型的數據結構
在用戶觀點下,關系模型中數據的邏輯結構是一張二維表,它由行和列組成。
關系(Relation)
●一個關系對應通常說的一張表
元組(Tuple)
●表中的一行即為一個元組
屬性(Attribute )
●表中的一列即為一個屬性,給每–個屬性起一個名稱即屬性名
主碼(Key)
●也稱碼鍵。表中的某個屬性組,它可以唯一 確定一個元組
域(Domain )
●是一組具有相同數據類型的值的集合。屬性的取值范圍來自某個域。
分量
●元組中的一一個屬性值。
關系模式 ●對關系的描述 關系名(屬性1,屬性2,,.屬性n) 學生(學號,姓名,年齡,性別,系名,年級)
關系必須是規范的,滿足一定的約束條件
最基本的約束條件: 關系的每一個分量必須是一個不可分的數據項,不允許表中還有表
③關系模型的操縱與完整性約束
數據操作是集合操作,操作對象和操作結果都是關系
■查詢
■插入
■刪除
■更新
存取路徑對用戶隱蔽,用戶只要指出“千什么 ’,不必詳細說明‘ “怎么干”
關系的完整性約束條件
■實體完整性
■參照完整性
■用戶定義的完整性
④關系數據庫的優缺點
優點
1.建立在嚴格的數學概念的基礎上
2.概念單一
●實體和各類聯系都用關系來表示
●對數據的檢索結果也是關系
3.關系模型的存取路徑對用戶透明
●具有更高的數據獨立性,更好的安全保密性
●簡化了程序員的工作和數據庫開發建立的工作
缺點
1.存取路徑對用戶透明,查詢效率往往不如格式化數據模型
2.為提高性能,必須對用戶的查詢請求進行優化,增加了開發數據庫管理系統的難度
感謝你能夠認真閱讀完這篇文章,希望小編分享的“數據庫的三種模型分別是什么”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。