範式理論,資料庫範式理論

來源:互聯網
上載者:User

範式理論,資料庫範式理論

目前的關係型資料庫有六種範式:第一範式(1NF),第二範式(2NF),第三範式(3NF),第四範式(四NF),第五範式(5NF),第六範式(6NF)。滿足最低要求的範式是第一範式。在第一範式的基礎上進一步滿足更多要求的稱為第二範式,其餘的範式依次類推。一般說來,資料庫滿足第三範式即可。

第一範式是最低的正常化要求,第一範式要求資料表不能存在重複的記錄,即存在一個關鍵字。1NF的第二個要求是每個欄位都不可再分,即已經分到最小,關聯式資料庫的定義就決定了資料庫滿足這一條。第一範式是設計資料庫表的最低要求,其最主要的特點就是實體的屬性不能再分,映射到表中,就是列(欄位)不能再分,如下:

學號

姓名

連絡方式

101

李曉峰

0995-23451214  675423369

如上面的連絡方式還可以再分,這樣就不符合第一範式,我們應該這樣子改:

學號

姓名

電話

QQ

101

李曉峰

0995-23451214

675423369

第二範式:

如果一個關係屬於1NF,且所有的非主關鍵字段都完全地依賴於主關鍵字,則稱之為第二範式,簡記為2NF

 

 

姓名

選秀課程

教材

張三

Struts2

Struts2完全手冊

李四

Struts2

Struts2完全手冊

李四

Oracle12c

Oracle開發手冊

上面的這個表是符合第一範式的,但是上面的資料中可以看出,姓名和選秀的課程是有對應的關係,但是姓名和教材是沒有什麼對應的關係,但是選秀課程和教材是有關係的,所以我們應該設計如下的表:

姓名

選秀課程

張三

Struts2

李四

Struts2

李四

Oracle12c

 

課程

教材

Oracle12c

Oracle開發手冊

Struts2

Struts完全手冊

第三範式
如果一個關係屬於2NF,且每個非關鍵字不傳遞依賴於主關鍵字,這種關係是3NF。如下:

學好

姓名

班級

系別

101

張三

C++1班

電腦技術

102

李四

英語1班

外語專業

上面的表示符合第二範式的,但是如果我們已經知道了這個學生所在的班級的話,那麼我們也就可以知道了這個學生所在的系別,那麼就是說系別資訊是多餘的。我們如下設計:

學好

姓名

班級

101

張三

C++1班

102

李四

英語1班

 

班級

系別

C++1班

電腦技術

英語1班

英語1班

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.