08 資料庫設計的正規化

2021-10-04 14:39:30 字數 2285 閱讀 8543

設計資料庫時,需要遵循的一些規範。要遵循後邊的正規化要求,必須先遵循前邊的所有正規化要求。

設計關聯式資料庫時,遵從不同的規範要求,設計出合理的關係型資料庫,這些不同的規範要求被稱為不同的正規化,各種正規化呈遞次規範,越高的正規化資料庫冗餘越小。

第一正規化(1nf)、第二正規化(2nf)、第三正規化(3nf)、巴斯-科德正規化(bcnf)、第四正規化(4nf)和第五正規化(5nf,又稱完美正規化)。

學號姓名系別

課程名稱

分數系名系主任

10010

張無忌經濟系

張三丰高等數學

9510010

張無忌經濟系

張三丰大學英語

8710010

張無忌經濟系

張三丰計算機基礎

6510011

令狐沖法律系

任我行法理學

7710011

令狐沖法律系

任我行大學英語

8710011

令狐沖法律系

任我行法律社會學

6510012

楊過法律系

任我行法律社會學

9510012

楊過法律系

任我行法理學

9710012

楊過法律系

任我行大學英語

99每一列都是不可分割的原子資料項

1nf表學號

姓名系名

系主任課程名稱

分數10010

張無忌經濟系

張三丰高等數學

9510010

張無忌經濟系

張三丰大學英語

8710010

張無忌經濟系

張三丰計算機基礎

6510011

令狐沖法律系

任我行法理學

7710011

令狐沖法律系

任我行大學英語

8710011

令狐沖法律系

任我行法律社會學

6510012

楊過法律系

任我行法律社會學

9510012

楊過法律系

任我行法理學

9710012

楊過法律系

任我行大學英語

99此表存在的問題在1nf的基礎上,非碼屬性必須完全依賴於碼(在1nf基礎上消除非主屬性對主碼的部分函式依賴)

消除部分依賴,解決第一正規化的冗餘問題

2nf表

選課表學號課程名稱

分數10010

高等數學

9510010

大學英語

8710010

計算機基礎

6510011

法理學77

10011

大學英語

8710011

法律社會學

6510012

法律社會學

9510012

法理學97

10012

大學英語

99學生表

學號姓名

系名系主任

10010

張無忌經濟系

張三丰10011

令狐沖法律系

任我行10012

楊過法律系

任我行計算機系

殷天正存在的問題在2nf基礎上,任何非主屬性不依賴於其它非主屬性(在2nf基礎上消除傳遞依賴)

消除傳遞依賴,進一步解決冗餘問題

剛剛所有的三個問題全部被解決掉!!!

選課表學號

課程名稱

分數10010

高等數學

9510010

大學英語

8710010

計算機基礎

6510011

法理學77

10011

大學英語

8710011

法律社會學

6510012

法律社會學

9510012

法理學97

10012

大學英語

99學生表

學號姓名

系名10010

張無忌經濟系

10011

令狐沖法律系

10012

楊過法律系

係表系名

系主任經濟系

張三丰法律系

任我行計算機系

殷天正

資料庫設計正規化

目前關聯式資料庫有六種正規化 第一正規化 1nf 第二正規化 2nf 第三正規化 3nf 第四正規化 4nf 第五正規化 5nf 和第六正規化 6nf 滿足最低要求的正規化是第一正規化 1nf 在第一正規化的基礎上進一步滿足更多要求的稱為第二正規化 2nf 其餘正規化以次類推。一般說來,資料庫只需滿...

資料庫設計正規化

前言 為什麼要寫這篇文章呢,從去年年底開始,就和很多做技術的朋友交流過,從資料庫設計到資料庫架構各個方面的內容。有一些朋友執著於orm,執著於所謂的資料庫設計,卻忘記了一切技術是要為業務服務這個基石。當然這文章裡也有一些自己的理解,想向大家表達。正規化是什麼 正規化是符合某一種級別的關係模式的集合。...

資料庫正規化設計

在軟體開發過程中,資料庫的設計是非常重要的。可以說,良好的資料庫設計,是對使用者需求的理解的精準定位。它不僅能夠使得軟體開發起來非常便捷,而且還能夠使軟體系統高效執行,同時,為日後的維護或者更換資料庫提供便利。在最近開發系統的過程中,感覺收穫最大的也是關於資料庫的操作。最初開發機房收費系統的時候,由...