在數據模型中有「型」(Type, T)和「值」的概念。sql
型:是指對某一類數據的結構和屬性的說明數據庫
類比:類數據庫設計
值:是型的一個具體賦值。設計
類比:對象對象
模式和實例:blog
實例:模式的一個具體值稱爲一個實例。同一個模式能夠有不少實例。ip
對比:
模式是相對穩定的,而實例是相對變更的,由於數據庫中的數據是在不斷更新。
模式反映的是數據的結構及其聯繫,而實例反映的是數據庫某一時刻的狀態。it
數據庫領域公認的標準結構是三級模式結構,它包括模式、外模式和內模式,有效地組織、管理數據,提升了數據庫的邏輯獨立性和物理獨立性。io
模式:又稱概念模式或邏輯模式,對應於概念級。
它是由數據庫設計者綜合全部用戶的數據,按照統一的觀點構造的全局邏輯結構,是對數據庫中所有數據的邏輯結構和特徵的整體描述,是全部用戶的公共數據視圖(全局視圖)。
它是由數據庫管理系統(DBMS)提供的數據模式描述語言(Data Description Language, DDL)來描述和定義的,
體現和反映了數據庫系統(DBS)的總體觀。數據類型
補充:
數據模式定義語言(Data Definition Language, DDL):是用於描述數據庫中要存儲的現實世界實體的語言。
DDL主要是用在定義或改變表的結構,數據類型,表之間的連接和約束等初始化工做上。例如:其實就是咱們在建立表的時候用到的一些sql,好比說,CREATE、ALTER、DROP等。
外模式:又稱子模式或用戶模式,對應於用戶級。
它是某個或某幾個用戶所看到的數據庫的數據視圖,是與某一應用有關的數據的邏輯表示。
它是從模式導出的一個子集,包含模式中容許特定用戶使用的那部分數據。
用戶能夠經過外模式描述語言來描述和定義對應於用戶的數據記錄(外模式),也能夠利用數據操縱語言(Data Manipulatioin Language, DML)對這些數據記錄進行描述和定義。
外模式反映了數據庫的用戶觀。
補充:
數據操縱語言(Data Manipulation Language, DML),用戶經過它能夠實現對數據庫的基本操做。
DML主要用來對數據庫的數據進行一些操做。例如:其實就是咱們最常常用到的 SELECT、UPDATE、INSERT、DELETE。
內模式:又稱存儲模式,對應於物理級。
它是數據庫中全體數據的內部表示或底層描述,是數據庫最低一級的邏輯描述,它描述了數據在存儲介質上的存儲方式和物理結構,對應着實際存儲在外存儲介質上的數據庫。
它是由內模式描述語言來描述和定義,
它是數據庫的存儲觀。
注意:
在一個數據庫系統中,只有惟一的數據庫,
於是做爲定義、描述數據庫存儲結構的內模式 和 定義、描述數據庫邏輯結構的模式,也是惟一的,
可是創建在數據庫系統之上的應用則是很是普遍多樣的,因此對應的外模式不是惟一的,也不多是惟一的。
二級映像:保證了邏輯數據獨立性和物理數據獨立性。
這裏的映射:是指兩個模式之間相互轉換。
外模式——模式映射:(邏輯數據獨立性)
用戶應用程序根據外模式進行數據操做,經過外模式——模式映射,定義和創建某個外模式與模式間的對應關係,將外模式與模式聯繫起來,
當模式發生改變時,只要改變其映射,就可使外模式保持不變,對應的應用程序也可保持不變。
模式——內模式映射:(物理數據獨立性)
經過模式——內模式映射,定義創建數據的邏輯結構(模式)與存儲結構(內模式)間的對應關係, 當數據存儲結構發生變化時,只需改變模式——內模式映射,就能保持模式不變,所以應用程序也能夠保持不變。