【數據庫】三級模式、二級映射


三級模式和二級映射

在數據模型中有“型”(Type, T)和“值”的概念。

  • 型:是指對某一類數據的結構和屬性的說明

    類比:

  • 值:是型的一個具體賦值。

    類比:對象

模式和實例:

  • 模式:是數據庫中全體數據的邏輯結構和特征的描述,它僅僅涉及到型的描述,不涉及到具體的值。
  • 實例:模式的一個具體值稱為一個實例。同一個模式可以有很多實例。

    對比:
    模式相對穩定的,而實例相對變動的,因為數據庫中的數據是在不斷更新。
    模式反映的是數據的結構及其聯系,而實例反映的是數據庫某一時刻的狀態。

三級模式結構

數據庫領域公認的標准結構是三級模式結構,它包括外模式、模式和內模式,有效地組織、管理數據,提高了數據庫的邏輯獨立性和物理獨立性。

  • 外模式:又稱子模式用戶模式,對應於用戶級。(部分邏輯結構
    它是某個或某幾個用戶所看到的數據庫的數據視圖,是與某一應用有關的數據的邏輯表示
    它是從模式導出的一個子集,包含模式中允許特定用戶使用的那部分數據。
    用戶可以通過外模式描述語言來描述和定義對應於用戶的數據記錄(外模式),也可以利用數據操縱語言(Data Manipulatioin Language, DML)對這些數據記錄進行描述和定義。
    外模式反映了數據庫的用戶觀

    補充:
    數據操縱語言(Data Manipulation Language, DML),用戶通過它可以實現對數據庫的基本操作。
    DML主要用來對數據庫的數據進行一些操作。

    例如:其實就是我們最經常用到的 SELECT、UPDATE、INSERT、DELETE。

  • 模式:又稱概念模式邏輯模式,對應於概念級。(全局邏輯結構
    它是由數據庫設計者綜合所有用戶的數據,按照統一的觀點構造的全局邏輯結構,是對數據庫中全部數據的邏輯結構和特征的總體描述,是所有用戶的公共數據視圖全局視圖)。
    它是由數據庫管理系統(DBMS)提供的數據模式描述語言(Data Description Language, DDL)來描述和定義的,
    體現和反映了數據庫系統(DBS)的整體觀

    補充:
    數據模式定義語言(Data Definition Language, DDL):是用於描述數據庫中要存儲的現實世界實體的語言。
    DDL主要是用在定義或改變表的結構,數據類型,表之間的鏈接和約束等初始化工作上。

    例如:其實就是我們在創建表的時候用到的一些sql,比如說,CREATE、ALTER、DROP等。

  • 內模式:又稱存儲模式,對應於物理級。(物理結構
    它是數據庫中全體數據的內部表示或底層描述,是數據庫最低一級的邏輯描述,它描述了數據在存儲介質上的存儲方式物理結構,對應着實際存儲在外存儲介質上的數據庫。
    它是由內模式描述語言來描述和定義,
    它是數據庫的存儲觀

注意:
一個數據庫系統中,只有唯一的數據庫
因而作為定義、描述數據庫存儲結構的內模式 和 定義、描述數據庫邏輯結構的模式,也是唯一的,
但是建立在數據庫系統之上的應用則是非常廣泛多樣的,所以對應的外模式不是唯一的,也不可能是唯一的。

二級映像功能

二級映像:保證了邏輯數據獨立性物理數據獨立性

這里的映射:是指兩個模式之間相互轉換。

  • 外模式——模式映射:邏輯數據獨立性
    用戶應用程序根據外模式進行數據操作,通過外模式——模式映射,定義和建立某個外模式與模式間的對應關系,將外模式與模式聯系起來,
    當模式發生改變時,只要改變其映射,就可以使外模式保持不變,對應的應用程序也可保持不變。

  • 模式——內模式映射:物理數據獨立性
    通過模式——內模式映射,定義建立數據的邏輯結構(模式)存儲結構(內模式)間的對應關系,
    當數據存儲結構發生變化時,只需改變模式——內模式映射,就能保持模式不變,因此應用程序也可以保持不變。


免責聲明!

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



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