資料庫 正規化

2021-08-04 05:47:56 字數 1083 閱讀 2820

四、正規化

資料庫正規化也分為1nf,

2nf,

3nf,

bcnf

,4nf

,5nf

。一般在我們設計關係型資料庫的時候,最多考慮到

bcnf

就夠。符合高一級正規化的設計,必定符合低一級正規化,例如符合

2nf的關係模式,必定符合

1nf。

1.1nf的定義為:符合

1nf的關係中的每個屬性都不可再分。

即表中不可有表

但是僅僅符合1nf的設計,仍然會存在資料冗餘過大,插入異常,刪除異常,修改異常的問題。

2.2nf定義:

2nf在

1nf的基礎之上,消除了非主屬性對於碼的部分函式依賴。

函式依賴:

在學生表中找不到任何一條記錄,它們的學號相同而對應的姓名不同。所以我們可以說姓名函式依賴於學號,寫作:學號 → 姓名

完全函式依賴:

在一張表中,若 x →

y,且對於

x 的任何乙個真子集(假如屬性組

x 包含超過乙個屬性的話),

x '

→ y

不成立,那麼我們稱

y 對於

x 完全函式依賴,記作

x  y。例如:

(學號,課名)分數

部分函式依賴:

假如 y 函式依賴於

x,但同時

y 並不完全函式依賴於

x,那麼我們就稱

y 部分函式依賴於

x,記作

x  y。例如

(學號,課名)

姓名碼:除 k 之外的所有屬性都完全函式依賴於 k。

包含在任何乙個碼中的屬性成為主屬性。

3nf:在

2nf的基礎之上,消除了非主屬性對於碼的傳遞函式依賴。

bcnf: 3nf 的基礎上消除主屬性對於碼的部分與傳遞函式依賴。

詳情參見**:

資料庫 資料庫正規化

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

資料庫正規化 三正規化

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

資料庫正規化

注 表在定義中被稱為關係,記作r 欄位在定義中被稱作屬性 模式 資料庫中有三種模式,外模式,內模式,模式 粗體是關鍵字的意思 斜體為外來鍵 以前寫下來的,但是用了多年的帳號已經忘了,唯有把文章轉到這裡來了 真暈哦 http blog.csdn.net fantasylu archive 2004 0...