一些基本概念:
(1)碼:資料庫中唯一能標識乙個記錄值得內部記錄識別符號。
(2)候選碼:可以標識乙個元組的最少的屬性集合(候選碼中所有的屬性都是必須的,缺少了任何乙個屬性都不能唯一標識乙個元組)。
例:(id)可以作為碼,(id,name)可以作為碼,但(id)可以作為候選碼(最少的屬性集合)。
(3)主碼:若候選碼多於乙個,則選定其中之一為主碼。
(4)外碼:乙個關係中的屬性是另乙個關係中的碼,這種屬性被稱為外碼。
(5)主屬性:乙個表可以有多個候選碼,對於某個屬性來說,如果這個屬性存在於所有的候選碼之中,則稱之為主屬性。
正規化說明:
1nf:資料表中的每一列都是不可分割的基本資料項(無重複列)。
2nf:r屬於1nf,且每乙個非主屬性完全函式依賴於任何乙個候選碼,則r屬於2nf。
3nf:每乙個非主屬性既不傳遞依賴於碼,也不部分依賴於碼,則r屬於3nf。
bcnf:所有非主屬性對每乙個碼都是完全函式依賴。
所有主屬性對每乙個不包含它的碼也是完全函式依賴。
沒有任何屬性完全函式依賴於非碼的任何一組屬性。
資料庫設計正規化
目前關聯式資料庫有六種正規化 第一正規化 1nf 第二正規化 2nf 第三正規化 3nf 第四正規化 4nf 第五正規化 5nf 和第六正規化 6nf 滿足最低要求的正規化是第一正規化 1nf 在第一正規化的基礎上進一步滿足更多要求的稱為第二正規化 2nf 其餘正規化以次類推。一般說來,資料庫只需滿...
資料庫設計正規化
前言 為什麼要寫這篇文章呢,從去年年底開始,就和很多做技術的朋友交流過,從資料庫設計到資料庫架構各個方面的內容。有一些朋友執著於orm,執著於所謂的資料庫設計,卻忘記了一切技術是要為業務服務這個基石。當然這文章裡也有一些自己的理解,想向大家表達。正規化是什麼 正規化是符合某一種級別的關係模式的集合。...
資料庫正規化設計
在軟體開發過程中,資料庫的設計是非常重要的。可以說,良好的資料庫設計,是對使用者需求的理解的精準定位。它不僅能夠使得軟體開發起來非常便捷,而且還能夠使軟體系統高效執行,同時,為日後的維護或者更換資料庫提供便利。在最近開發系統的過程中,感覺收穫最大的也是關於資料庫的操作。最初開發機房收費系統的時候,由...