資料庫的正規化

2021-07-07 09:29:28 字數 608 閱讀 7827

目前

關聯式資料庫

有六種正規化:第一正規化(1nf)、第二正規化(2nf)、第三正規化(3nf)、巴斯-科德正規化(bcnf)、

第四正規化

(4nf)和

第五正規化

(5nf,又稱完美正規化)。滿足最低要求的正規化是第一正規化(1nf)。在第一正規化的基礎上進一步滿足更多規範要求的稱為第二正規化(2nf),其餘正規化以次類推。一般說來,資料庫只需滿足第三正規化(3nf)就行了。

1nf :平常的最基本最常見的操作就是第一正規化。比如ios中常用的資料庫操作僅僅在1nf的層次上。 

2nf:對於兩類基本資料之間就有某種關係,進行關聯起來。那麼就會用到第二正規化。比如

把選課關係表selectcourse改為如下三個表: 

學生:student(學號,姓名,年齡,性別,系別,系辦位址、系辦**); 

課程:course(課程名稱,學分);

選課關係:selectcourse(學號,課程名稱,成績)。

3nf:比2nf的聯絡關係更近一步,那麼就是3nf。依次類推。

(學號)→ (姓名,年齡,性別,系別,系辦位址、系辦**

但是還存在下面的決定關係

(學號) → (系別)→(系辦地點,系辦**)

資料庫 資料庫正規化

關聯式資料庫的設計規範。不同的規範要求被稱為不同的正規化,越高的正規化資料庫冗餘越小。減少資料庫中資料冗餘的過程 1 第一正規化 1nf 在關係模式r中,當且僅當所有屬性只包含原子值,即每個分量都是不可再分的資料項,則稱r滿足1nf。例如表所示的教師職稱情況關係就不滿足1nf。原因在於,該關係模式中...

資料庫正規化 三正規化

所謂第一正規化 1nf 是指在關係模型中,對域新增的乙個規範要求,所有的域都應該是原子性的,即資料庫表的每一列都是不可分割的原子資料項,而不能是集合,陣列,記錄等非原子資料項。即實體中的某個屬性有多個值時,必須拆分為不同的屬性。在符合第一正規化 1nf 表中的每個域值只能是實體的乙個屬性或乙個屬性的...

資料庫的正規化

1nf 表中元素不能再拆 2nf 1首先是1nf 2完全依賴 例子 a,b c a c 且 b c 就是完全依賴 a c 或 b c 是部分依賴 2nf解決了插入,刪除問題,沒解決更新問題 3nf 1首先是2nf 2任何非主屬性不傳遞依賴於任何候選鍵 候選鍵 可以推出其他全部屬性的屬性或屬性組 主屬...