什麼樣的表符合3NF 正規化

2021-06-27 07:02:03 字數 771 閱讀 3550

表的正規化,是首先符合1nf,才能滿足2nf , 進一步滿足3nf

第一正規化(1nf):

即表的列具有原子性,不可再分解,即列的資訊,不能分解, 只要資料庫是關係型資料庫(mysql/oracle/db2/informix/sysbase/sqlserver),就自動的滿足1nf。

資料庫的分類

關係型資料庫有一些結構上的缺陷,所以有些人設計了非關係型資料庫。

特點: 物件導向或者集合

例如,mongodb(特點:面向文件)

第二正規化(2nf):

表中的記錄是唯一的, 就滿足2nf, 通常我們設計乙個主鍵來實現

主鍵通常不包含業務邏輯,一般是自增的,因為主鍵不含業務邏輯,所以比較穩定

第三正規化(3nf):

即表中不要有冗餘資料, 就是說,表的資訊,如果能夠被推導出來,就不應該單獨的設計乙個欄位來存放. 比如下面的設計就是不滿足3nf:

反3nf :

沒有冗餘的資料庫未必是最好的資料庫,有時為了提高執行效率,就必須降低正規化標準,適當保留冗餘資料。具體做法是:在概念資料模型設計時遵守第三正規化,將降低正規化標準的工作放到物理資料模型設計時考慮。降低正規化就是增加字段,允許冗餘

反三正規化在一對多的關係中很容易遇到

案例 :

相簿的瀏覽次數是可以通過其他表的資料推導出來的,但是這樣就會降低效率。

什麼樣的教育就有什麼樣孩子!

寵出來的孩子 危險 捧出來的孩子 霸道 慣出來的孩子 任性 嬌出來的孩子 脆弱 打出來的孩子 逆反 罵出來的孩子 胡塗 逼出來的孩子 出格 磨出來的孩子 堅強 苦出來的孩子 懂事 教出來的孩子 傳統 闖出來的孩子 勇敢 搏出來的孩子 成功 表揚出的孩子 自信 溺愛出的孩子 依賴 哄出來的孩子 虛偽 ...

什麼樣的社群?

3 14 2005 9 12 pm jian shuo wang 非常同意passby的看法,hi pda成功的根源在於使用者群太像了。想想手拿pda而且喜歡來研究的人長什麼樣子?必然是 男性,20到28歲,有些錢,月入n千甚至一萬但很少有月入2萬的,it背景。等等。不見的正確的猜測,但是 不離十。...

什麼樣的社群?

3 14 2005 9 12 pm jian shuo wang 非常同意passby的看法,hi pda成功的根源在於使用者群太像了。想想手拿pda而且喜歡來研究的人長什麼樣子?必然是 男性,20到28歲,有些錢,月入n千甚至一萬但很少有月入2萬的,it背景。等等。不見的正確的猜測,但是 不離十。...