天天看點

資料庫 模式 視圖 索引

1、外模式、模式、内模式之間的差別及其映射關系

       從資料庫管理系統角度看,資料庫系統通常采用三級模式結構:外模式、模式、内模式,這是資料庫管理系統内部的系統結構。在資料模型中有“型”(Type)和“值”(Value)的概念。型是指對某一類資料的結構和屬性的說明,值是型的一個具體指派。資料庫系統的模式是資料庫中全體資料的邏輯結構和特征的描述,它僅僅涉及到型的描述,不涉及具體的值。模式的一個具體值成為模式的一個執行個體(Instance),同一個模式可以有多個執行個體。模式是反映資料的結構及其聯系的,其實相對穩定的。而執行個體反映的是資料庫某一時刻的狀态,其随着資料庫中資料的的更新處于相對變動中。

1)模式:(全體資料  1個)也稱為邏輯模式,是資料庫中全體資料的邏輯結構和特征的描述,是所有使用者的公共資料視圖。它是資料庫系統模式結構的中間層,既不涉及資料的實體存儲細節和硬體環境,也與具體的應用、所使用的應用開發工具及進階程式設計語言無關。模式實際上是資料庫資料在邏輯上的視圖,一個資料庫隻有一個模式。定義模式時不僅要定義資料的邏輯結構,而且要定義資料之間的聯系,定義與資料相關的安全性、完整性要求。

2)外模式:(部分資料(子集)  多個)也稱為子模式或使用者模式,它是資料庫使用者所能夠看見和使用的局部資料的邏輯結構和特征的描述,是資料庫使用者的資料視圖,是與某一應用有關的資料的邏輯表示。對于不同的使用者應用需求,外模式的描述也不同,是以一個資料庫可以有多個外模式。另外,同意外模式也可以為某一使用者的多個應用系統所使用,但一個應用程式隻能使用一個外模式,即一個使用者隻能看見和通路其所對應的外模式中的資料。

3)内模式:(内部存儲  1個)也稱為存儲模式,它是資料實體結構和存儲方式的描述,是資料在資料庫内部的表示方式,一個資料庫隻有一個内模式,其對資料庫使用者是透明的。

由上述可以看出,模式、外模式、内模式是對資料的3個抽象級别,模式是外模式和内模式之間的橋梁。在資料庫内部是通過外模式/模式、模式/内模式兩層映像将其聯系起來,進而為資料提供較高的邏輯獨立性和實體獨立性。

1)模式描述的是資料的全局邏輯結構,而外模式描述的是資料的局部邏輯結構。當模式改變時,由資料庫管理者對各個外模式/模式的映像作相應改變,可以使外模式保持不變。而應用程式是依據資料的外模式編寫的,進而應用程式不必改變,保證了資料與程式的邏輯獨立性。

2)模式與内模式描述了資料的全局邏輯結構和存儲結構之間的對應關系。當資料庫的存儲結構改變時,有資料庫管理者對模式/内模式映像進行相應的改變,進而保證模式可以保持不變。進而應用程式不用改變,保證了資料的實體獨立性。

2、關系資料庫管理系統(RDBMS)中模式與視圖、基本表之間的對應關系

         在關系資料庫中,一個關系就對應資料庫中的一個基本表(實體表)。支援SQL的RDBMS也支援資料庫三級模式結構,其中外模式對應于視圖和部分基本表,模式對應于基本表,而内模式對應于存儲檔案。

1)基本表:它是本身獨立存在的表,在SQL中,一個(或多個)基本表對應于一個存儲檔案,一個表可以帶若幹索引,索引也可以存放在存儲檔案中。存儲檔案的邏輯結構組成了關系資料庫的内模式。存儲檔案的實體結構是任意的,對使用者是透明的。

2)視圖是從一個或幾個基本表導出的表,它本身并不單獨存儲在資料庫中,即資料庫中存放視圖的定義而不存放視圖對應的資料。這些資料仍在導出視圖的基本表中,是以視圖是一個虛表。

可視化工具檢視視圖:

資料庫 模式 視圖 索引

3、索引