資料庫1,2,3 正規化的概念與理解

2021-10-08 17:07:13 字數 1401 閱讀 3958

關聯式資料庫有六種,一、二、三、四、五和bc。滿足最低要求的正規化是第一正規化。在第一正規化的基礎上進一步滿足更多要求的稱為第二正規化,其餘正規化以此類推。一般情況的資料庫只需滿足第三正規化即可。

如果關係模式r是第一正規化的模式,那麼,r的每乙個關係r的屬性都是原子項,不可分割。

1nf是關係模式應具備的最起碼的條件,如果資料庫設計不能滿足第一正規化,就不能稱為關係型資料庫。關聯式資料庫設計研究的關係規範化是在1nf之上進行的。

如果關係模式r是1nf,且每乙個非主屬性完全依賴於候選建,那麼就稱r是第二正規化。

第二正規化要滿足的條件:首先要滿足第一正規化,其次每乙個非主屬性要完全函式依賴於候選鍵,或者是主鍵。也就是說,每個非主屬性是由整個主鍵函式決定的,而不能有主鍵的一部分來決定。

第二正規化(2nf):符合1nf,並且,非主屬性完全依賴於碼。(乙個候選碼中的主屬性也可能是好幾個。如果乙個主屬性,它不能單獨做為乙個候選碼,那麼它也不能確定任何乙個非主屬性。

什麼樣的例項不符合第二正規化?

舉乙個教務管理系統的例子。

學生上課指定乙個老師,一本教材,乙個教室,乙個時間,學生去上課,怎麼設計資料庫?

有如下關係成立:

(學生,課程)——>教室;

(學生,課程)——>老師;

(學生,課程)——>老師職稱;

(學生,課程)——>教材;

(學生,課程)——>上課時間;

可以得出(學生,課程)是乙個碼。

又:課程——>教材;

出現了這種情況,就不滿足第二正規化了。

解決辦法:分解。進行投影分解:

如果關係模式r是2nf,且關係模式r(u,f)中的所有非主屬性對任何候選關鍵字都不存在傳遞依賴,則稱關係r是屬於第三正規化。

第三正規化(3nf);符合2nf,並且,消除傳遞依賴。

上圖中符合2nf ,但存在傳遞依賴(老師——>老師職稱。乙個老師一定能確定乙個老師職稱)。

解決辦法:分解。投影分解:

第四正規化:要求把同一表內的多對多關係刪除。

第五正規化:從最終結構重新建立原始結構。

bc正規化(bcnf):符合3nf,並且,主屬性不依賴於主屬性。若關係模式r屬於第一正規化,且每個屬性都不傳遞依賴於鍵碼,則r屬於bc正規化。

資料庫設計 123正規化

資料庫設計的正規化 概念 設計資料庫時,需要遵循的一些規範。要遵循後邊的正規化要求,必須先遵循前邊的所有正規化要求 設計關聯式資料庫時,遵從不同的規範要求,設計出合理的關係型資料庫,這些不同的規範要求被稱為不同的正規化,各種正規化呈遞次規範,越高的正規化資料庫冗餘越小。目前關聯式資料庫有六種正規化 ...

資料庫正規化理解

當前我們使用的主流資料庫是關係型資料庫,所以我是記錄在關係型資料庫中對正規化的一些理解和看法。資料庫庫正規化分為六種 其實還有有乙個bcnf 分別為從第一正規化到第六正規化。高階一層是建立在所有低層的基礎上的,如第2正規化是建立在第一正規化的基礎上的,依次類推。下面分別舉例講解各種正規化 第一正規化...

資料庫正規化的理解

就是滿足了單一屬性不能再分割,正常情況下,你在資料庫裡建立的表肯定是滿足這個正規化的,要想不滿足這個正規化,可以在excel中嘗試合併單元格,拆分單元格體會下,就明白了。2nf 必須不存在非關鍵字段對組合的關鍵字段中的某些的依賴,比如某個表有 個關鍵字,但是它的非關鍵屬性 依賴第乙個關鍵字,非關鍵屬...