數據庫復習


第一章 緒論

1.1數據庫系統概述

1.1.1 數據庫的四個基本概念

數據、數據庫、數據庫管理系統、數據庫系統

1.數據(data)

數據庫中存儲的基本對象。

  • 定義:描述事物的符號記錄。
  • 種類:數字、文字、視頻、音頻等
  • 特征:特征就是數據的語義,數據與其語義是不可分割的。

2.數據庫

是長期存儲在計算機內部、有組織、可共享的、大量的數據的集合。

  • 基本特征:數據按照一定的數據模型組織、描述和儲存;可為各種用戶共享;冗余度較小;數據獨立性較高;易擴展。

3.數據庫管理系統

位於用戶與操作系統之間的一層數據管理軟件。用來科學的組織和存儲數據、高效地獲取和維護數據。

4.數據庫系統

在計算機系統中一如數據庫后地系統。

  • 數據庫系統的構成

    數據庫、操作系統、數據庫管理系統及開發工具、應用系統、數據庫管理員、用戶。

image-20211126195157805

  • 特征:數據結構化;數據共享性高,冗余度低且易擴充;數據獨立性搞;數據又數據庫系統統一管理和控制。

1.1.2數據管理技術的產生和發展

  1. 什么是數據處理:

    圍繞着數據所作的工作都可成為數據處理。既對各種數據進行手機、管理、加工、傳播的一系列活動的綜合。

  2. 什么是數據管理:

    對數據進行分類、組織、編譯、存儲、檢索、維護,是數據處理的中心問題。數據管理是數據處理業務的基本環節,而且是任何數據業務處理中必不可少的共有部分。

  3. 數據管理技術的發展過程

    • 人工管理階段
    • 文件系統階段
    • 數據庫系統階段

    image-20211126202507015

1.1.3數據庫系統的特點

  • 數據結構化
  • 數據的高共享性,冗余度低且易擴充
  • 數據的獨立性高
    • 物理獨立性:指用戶的應用程序與數據庫中數據的物理存儲時相互獨立的。當數據的物理存儲改變了,應用程序不用改變。
    • 邏輯獨立性:指用戶的應用程序與數據庫的邏輯結構是相互獨立的。數據的邏輯結構改變了,應用程序不用改變。
  • 數據由數據庫管理系統統一管理和控制

1.2數據模型

1.2.1三種數據模型

  1. 概念模型:也稱為信息模型,它是按用戶的觀點來對數據和信息建模,用於數據庫設計。
  2. 邏輯模型:邏輯模型主要包括網狀模型、乘此模型、關系模型、面向對象數據模型、對象關系數據模型、半結構化數據模型等。按照計算機系統的觀點對數據建模,用與DBMS實現。
  3. 物理模型:物理模型是對數據最底層的抽象,描述數據在系統內部的表示方式和存取方法,在磁盤或磁帶上的存儲方式和存取方法。

1.2.2數據模型的組成要素

數據模型有三個組成要素:數據結構、數據操作、完整性約束條件。

  • 數據結構

    描述數據庫的組成對象及對象之間的聯系。它是對系統 靜態特性的描述。

  • 數據操作

    對各種對象的實例允許執行的操作及有關的操作規則。它是對系統動態特性的描述。

  • 數據的完整性約束條件

    一組完整性規則的集合。

    用以限定符合數據模型的數據庫狀態以及狀態的變化,以保證數據的正確、有效、相容。

1.2.3概念模型

概念模型的用途:它主要用於信息世界的建模,是現實世界到機器世界的一個中間層次。是數據庫設計的有力工具;是數據庫設計人員和用戶之間進行交流的語言。


實體:客觀存在且相互區別的事物。

  • 屬性:實體所具有的某一特性。

  • 碼:唯一表示實體的屬性集合。

  • 域:屬性的取值范圍稱為該屬性的域。

  • 實體型:用實體名及其屬性名集合來抽象和刻畫同類實體稱為實體型。

  • 實體集:同一類型實體的集合成為實體集。

  • 聯系:顯示世界中書屋內部以及事物之間的聯系。

1.2.4 最常用的數據模型

  • 非關系模型:層次模型、網狀模型
  • 關系模型:
  • 面向對象模型
  • 對象關系模型

1.2.5層次模型

類似於數據結構里面的樹狀結構的東西。

1.2.6網狀模型

對應數據結構里面的圖

1.2.7關系模型

一張二維表

  1. 術語

    • 關系:對應一張表

    • 元組:表的一行

    • 屬性:表的一列,這一列的名稱叫做屬性名

    • 主碼:表中的屬性組可以唯一的確定一個元組

    • 域:屬性的取值范圍

    • 分量:屬性的取值范圍

    • 關系模式:對關系的描述

      關系名(屬性1,屬性2,,,屬性3)

    • 關系必須是規范化的,滿足一定的規范條件。

      關系的每一個分量條件是一個不可分割的數據項,即不存在表中表

      關系術語 一般表格的術語
      關系名 表名
      關系模式 表頭(表格的描述)
      關系 (一張)二維表
      元組 記錄或行
      屬性
      屬性名 列名
      屬性值 列值
      分量 一條記錄中的一個列值
      非規范關系 表中有表(大表中嵌有小表)
  2. 關系數據模型的操縱

    • 查詢
    • 插入
    • 刪除
    • 更新
  3. 關系數據模型的完整性約束條件

    • 實體完整性
    • 參照完整性
    • 用戶自定義的完整性
  4. 關系模型的優點

    • 建立在嚴格的數學概念的基礎上
    • 概念單一
    • 關系模型的存取路徑對用戶透明
  5. 關系模型的缺點

    • 存取路徑都用戶透明,查詢效率低
    • 提高性能要對用戶查詢的請求進行優化,增加了開發難度。
層次模型 網狀模型 關系模型 面向對象模型
創始 1968IBM公司的IMS系統 1969 CODASYL DBTG 報告 (71 年通過 ) 1970 F.Codd 提出關系模型 20 世紀 80 年代
數據結構 復雜 (樹結構) 復雜 (有向圖結構) 簡單 二維表 復雜 (嵌套遞歸)
數據聯系 通過指針 通過指針 通過表間的公共屬性 通過對象標識
查詢語言 過程性語言 過程性語言 非過程性語言 面向對象語言
典型產品 IMS IDS/Ⅱ IMAGE/3000 IDMS TOTAL Oracle Sybase DB2 SQL Server Informix ONTOS DB
盛行期 20 世紀 70 年代 **70 ** 年代至 80 年代中期 80 年代至現在 90 年代至現在

1.3數據庫系統結構

1.3.1數據庫系統模式的概念

  • 型:對某一類數據的節后和屬性的說明。(一個類型)
  • 值:型的一個具體賦值(一個實例)
  • 模式:數據庫邏輯結構和特征的描述。它是型的描述。
  • 實例:模式的一個具體值。

1..3.2 數據庫系統的三級模式

image-20211129102743596

  • 外模式(子模式或用戶模式):數據庫用戶使用的局部數據的邏輯結構特征的的描述。一個數據庫可以有多個。
  • 模式(邏輯模式或概念模式):數據庫中全體數據的邏輯結構和特征的描述。一個數據庫只有一個。
  • 內模式(存儲模式): 是數據物理結構和存儲方式的描述,是數據在數據庫內部的表示方式,一個數據庫只有一個內模式。

1.3.3 數據的二級映像功能與數據獨立性

  1. 二層映射

    • 外模式/模式

      同一個模式可以有多個外模式。 對每一個外模式 ,數據庫系統都有一個外模式/模式映象,用來定義外模式與模式之間的對應關系,映象定義通常包含在各自外模式的描述中,以 保證數據的邏輯獨立性。

      當模式改變時,數據庫管理員修改有關的外模式/模式映象,使外模式保持不變。 應用程序是依據外模式編寫的 ,從而應用程序不必修改,保證了數據與程序的邏輯獨立性。

    • 模式/內模式映像

      l當數據庫的存儲結構改變了(如 選用了另一種存儲結構 ), 數據庫管理員修改模式/內模式映象,使模式保持不變

1.3.4 數據庫模式

1.4 數據庫系統的組成

硬件平台與數據庫、應用程序、數據庫管理員。

第二章 關系數據庫

2.1 關系數據結構及形式化定義

2.1.1 關系

關系模型中的數據的邏輯結構時一張二維表

  1. 域:一組具有相同數據類型的值的集合。

  2. 笛卡爾積:一組域中的所有的值的全排列,不能出現重復。

    • 元組:笛卡爾積中的一組取值
    • 分量:一組取值中的一項
    • 基數:組合出出來的個數
  3. 關系:笛卡爾積的子集,表示為

    image-20211201192739986
    • 屬性:列的名字

    • 候選碼:關系中某一屬性組的值能唯一標識一個元組,而其自己不能。

      關鍵字/主碼:多個候選碼時選擇其中一個。

      主屬性:候選碼的諸屬性

      非主屬性:不包含在候選碼中的屬性。

2.1.2 關系模式

  1. 關系模式:關系模式是對關系的描述,關系模式是型,關系是值。
  2. 定義關系模式:R U D DOM F
    • R:關系名
    • U:組成該關系的屬性名集合
    • D:屬性組U中屬性所來自的域
    • DOM:屬性向域的映像集合
    • F:屬性鍵的數據依賴集合。
  3. 關系模式和關系
    • 關系模式:對關系的描述,靜態的、穩定的、
    • 關系:關系模式在某一時刻的狀態或內容。動態的、隨時間不斷變化。

2.1.3 關系數據庫

在一個給定的應用領域中,所有關系的集合構成一個關系數據庫。

2.1.4 關系模型的存儲結構

2. 2關系操作

增、刪、改、查。

2.3關系的完整性

關系的三類完整性約束:實體完整性、參照完整性、用戶定義的完整性。

2.3.1 實體完整性

實體完整性規則:若屬性A是基本關系R的主屬性,則主屬性A不能去空值。

2.3.2 參照完整性

設F是基本關系R的一個或一組屬性,但不是關系R的碼。如果F域基本關系S的主碼Ks相對應,則稱F是基本關系R的外碼,基本關系R成為基本參照關系,基本關系S成為被參照關系。

參照完整性規則:若屬性F是基本關系R的外碼,它與基本關系S的主碼Ks相對應。則對於R中每個元組在F上的值必須為一下兩種情況:

  • 或者取空值
  • 或者等於S中某個元組的主碼值。

實質就是不允許引用不存在的實體。

2.4 關系代數

  1. 並:image-20211201205028266

  2. 差:image-20211201205051781

  3. 交:image-20211201205121170

  4. 笛卡爾積:image-20211201205524655

    笛卡爾積是把兩列分別放在一起進行排列組合

  5. 選擇:

    image-20211201205907666

  6. 投影:

    image-20211201205950510
  7. 連接:image-20211201210029722

    • 等值連接:用A=B來選擇。
    • 自然連接:要就把兩個關系中進行比較的分量必須是相同的屬性組,並且在結果中把相重復的屬性列去掉。此時記作:image-20211201211408707
    • 懸浮元組:
    • 外連接、左外連接、右外連接
  8. 除:

    第1步:將被除關系R的屬性分為象集屬性和結果屬性兩部分:與除關系S相同的屬性屬於象集屬性,不相同的屬性屬於結果屬性。
    第2步:在除關系S中,對與被除關系R相同的屬性(象集屬性)進行投影,得到除目標數據集。
    第3步:將被除關系R分組,原則:結果屬性值一樣的元組為一組,求每個結果屬性值的象集。
    第4步:逐一考察每個組,如果它的象集屬性值中包括除目標數據集,則對應的結果屬性值應 屬於該除法運算結果集。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM