前言
數據模型是數據庫系統的核心,本文簡要介紹三種主要的數據庫模型。
一、格式化模型
格式化模型是層次模型和網狀模型的統稱
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.為提高性能,必須對用戶的查詢請求進行優化,增加了開發數據庫管理系統的難度
感謝你能夠認真閱讀完這篇文章,希望小編分享的“數據庫的三種模型分別是什么”這篇文章對大家有幫助,同時也希望大家多多支持本站,關注本站行業資訊頻道,更多相關知識等著你來學習!
本文由 貴州做網站公司 整理發布,部分圖文來源于互聯網,如有侵權,請聯系我們刪除,謝謝!
c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...
2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...
:喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...
(資料圖片僅供參考)據時間視頻消息,【意大利遇干旱一小鎮禁止理發店給顧客洗兩遍頭:違者最高罰500歐】#意大利一小鎮禁理發店給顧客洗兩遍頭#近日,意大利遭遇持續干旱,該國最大的河流達到70年來的最低水位。小鎮卡斯泰納索推出《節水令》,其中禁止理發店為顧客理發時沖洗兩遍頭發。鎮長Carlo稱,洗頭兩次的慣例,每天會浪費數千公升的水資源。違反要求的理發店將受到最高500歐元(約人民幣3499元)的處罰...
銀監會是干什么的?銀監會的五大職責有什么?下邊隨小編來具體了解一下銀監會是國有銀行,地方銀行的監督,管理機構。負責貫徹中央金融政策,法規的執行和落實。協助國有銀行,地方銀行開展金融,業務方面的資詢,服務,培訓等等。銀監會對上一級銀監會負責,對各國有銀行,地方銀行,商業銀行實行統籌管理的一個機構。銀監會的五大職責(一)依法依規對全國銀行業和保險業實行統一監督管理,維護銀行業和保險業合法、穩健運行,對...
ABS融資是什么意思?abs融資它是由各企業的貸款協議或者應收賬款作為擔?;A發行進行融資的一種方式,簡單來說就是把缺乏流動性、但具有可預期收入的資產,通過在資本市場上發行證券的方式出售以獲取資金,提高資產的流動性。abs融資是通過在國際市場發行債券籌集資金的,債券利率一般相對較低,降低了企業籌資成本。abs是直接融資還是間接融資?ABS是指將資產通過資本市場上發行證券的方式出售,以獲取融資,是一...