規範化 資料庫設計原則

2021-08-29 12:40:48 字數 1201 閱讀 3624

關聯式資料庫設計的核心問題是關係模型的設計。本文將結合具體的例項,介紹資料庫設計規範化的流程。
摘要

關係型資料庫是當前廣泛應用的資料庫型別,關聯式資料庫設計是對資料進行組織化和結構化的過程,核心問題是關係模型的設計。對於資料庫規模較小的情況,我們可以比較輕鬆的處理資料庫中的表結構。然而,隨著專案規模的不斷增長,相應的資料庫也變得更加複雜,關係模型表結構更為龐雜,這時我們往往會發現我們寫出來的sql語句的是很笨拙並且效率低下的。更糟糕的是,由於表結構定義的不合理,會導致在更新資料時造成資料的不完整。因此,就有必要學習和掌握資料庫的規範化流程,以指導我們更好的設計資料庫的表結構,減少冗餘的資料,藉此可以提高資料庫的儲存效率,資料完整性和可擴充套件性。本文將結合具體的例項,介紹資料庫規範化的流程。

回頁首

序言本文的目的就是通過詳細的例項來闡述規範化的資料庫設計原則。在db2中,簡潔、結構明晰的表結構對資料庫的設計是相當重要的。規範化的表結構設計,在以後的資料維護中,不會發生插入(insert)、刪除(delete)和更新(update)時的異常。反之,資料庫表結構設計不合理,不僅會給資料庫的使用和維護帶來各種各樣的問題,而且可能儲存了大量不需要的冗餘資訊,浪費系統資源。

要設計規範化的資料庫,就要求我們根據資料庫設計正規化――也就是資料庫設計的規範原則來做。但是一些相關材料上提到的正規化設計,往往是給出一大堆的公式,這給設計者的理解和運用造成了一定的困難。因此,本文將結合具體形象的例子,盡可能通俗化地描述三個正規化,以及如何在實際工程中加以優化應用。

回頁首

規範化在設計和操作維護資料庫時,關鍵的步驟就是要確保資料正確地分布到資料庫的表中。使用正確的資料結構,不僅便於對資料庫進行相應的訪問操作,而且可以極大地簡化應用程式的其他內容(查詢、窗體、報表、**等)。正確進行表設計的正式名稱就是"資料庫規範化"。後面我們將通過例項來說明具體的規範化的工程。關於什麼是正規化的定義,請參考附錄文章 1.

回頁首

資料冗餘

資料應該盡可能少地冗餘,這意味著重複資料應該減少到最少。比如說,乙個部門雇員的**不應該被儲存在不同的表中, 因為這裡的**號碼是雇員的乙個屬性。如果存在過多的冗餘資料,這就意味著要占用了更多的物理空間,同時也對資料的維護和一致性檢查帶來了問題,當這個員工的**號碼變化時,冗餘資料會導致對多個表的更新動作,如果有乙個表不幸被忽略了,那麼就可能導致資料的不一致性。

本文**:

資料庫規範化

規範化 normalization 是資料庫系統設計中非常重要的乙個技術。資料庫規範化能夠讓資料庫設計者更好地了解組織內部當前的資料結構,最終得到一系列的資料實體。資料庫規範化通過對資料庫表的設計,可以有效降低資料庫冗餘程度。在進行資料庫規範化的時候,我們有一系列的步驟需要遵循。我們把這些步驟稱作正...

資料庫設計中的規範化

正規化是符合某一種級別的關係模式的集合。關聯式資料庫中的關係必須滿足一定的要求。滿足最低要求的叫第一正規化,簡稱1nf,在第一正規化基礎上進一步滿足一些要求的為第二正規化,簡稱2nf。其餘依此類推,目前有六種正規化 1nf,2nf,3nf,bcnf,4nf,5nf。1 第一正規化 1nf 在任何乙個...

資料庫設計系列6 規範化

在前面的部分,我們學習了er建模方法,一種泛化的自上而下的資料庫設計方法,在這一節,我們學習另外的一種泛化的資料庫設計的方法,叫做規範化。在資料庫設計中,規範化可以有兩種使用方法,第一種是把規範化用作自下而上的資料庫設計方法,第二種是把規範化方法與er建模結合起來使用,把規範化作為自下而上的方法包括...