正規化小知識

2022-08-14 21:12:15 字數 917 閱讀 2749

資料庫的規範化:

1nf:要求屬性列的原子性,同一列中沒有重複值。(有部分依賴)

2nf:不存在非主屬性對碼的部分依賴。只有完全依賴。

3nf:消除了非主屬性對碼的傳遞依賴。

bcnf:消除了主屬性對碼的傳遞依賴。

4nf:消除了多值依賴。

5nf:消除了連線依賴。

例:多值依賴:每個職位可以屬於乙個或多個部門:職位編碼->->所屬部門

要記住的3個事實:

①要求分解保持函式依賴,模式分離總可以達到3nf,不一定達到bcnf;

②要求分解既保持函式依賴又具有無損連線性,可到3nf,不一定到bcnf;

③要求分解具有無損連線性,可以達到4nf。

判斷是否無損連線:

關係模式r(u,f)的乙個分解,p=,

具有無損連線的充分必要條件:u1∩u2 -> u1-u2 ∈ f+

判斷是否是候選碼:

l類和nlr類必是。r類必不是。

執行事務

事務機制可以確保資料一致性。

事務應該具有4個屬性:原子性、一致性、隔離性、永續性。這四個屬性通常稱為acid特性。

原子性(atomicity)。乙個事務是乙個不可分割的工作單位,事務中包括的諸操作要麼都做,要麼都不做。

一致性(consistency)。事務必須是使資料庫從乙個一致性狀態變到另乙個一致性狀態。一致性與原子性是密切相關的。

隔離性(isolation)。乙個事務的執行不能被其他事務干擾。即乙個事務內部的操作及使用的資料對併發的其他事務是隔離的,併發執行的各個事務之間不能互相干擾。

永續性(durability)。持續性也稱永久性(permanence),指乙個事務一旦提交,它對資料庫中資料的改變就應該是永久性的。接下來的其他操作或故障不應該對其有任何影響。

python小知識 Python小知識

1 python是一種解釋性語言,當程式執行時,一行一行的解釋,並執行 優點 除錯 很方便,開發效率高,並且可以跨平台 不但入門容易,而且將來深入下去,可以編寫那些非常非常複雜的程式。缺點 執行速度慢。python的種類 cpython ipython pypy jython ironpython ...

python小知識 python小知識

一 列表 l 1,2 m l l和m同時指向列表物件,內容為 1,2 l l 3,4 系統新增了乙個物件,內容為 1,2,3,4 l,m 1,2,3,4 1,2 l 1,2 m l l 3,4 對列表在原處做修改 l,m 1,2,3,4 1,2,3,4 二 python程式設計中的中文編碼問題 問題...

MySQL高階知識點 四 正規化與反正規化

第一正規化 1nf是對屬性的原子性,要求屬性具有原子性,不可再分解 第一正規化是最基本的正規化。如果資料庫表中的所有字段值都是不可分解的原子值,就說明該資料庫表滿足了第一正規化。資料庫表的每一列都是不可分割的原子資料項,而不能是集合,陣列,記錄等非原子資料項。簡而言之,第一正規化就是無重複的域。第二...