數據庫規范化用于數據庫管理系統(DBMS),特別是關系數據庫,以減少冗余信息,從而最大限度地減少數據異常。異常可能來自分組不當或冗余的信息,并可能造成一系列影響,例如不正確的數據插入或刪除一整組數據。通過使用數據庫規范...
數據庫規范化用于數據庫管理系統(DBMS),特別是關系數據庫,以減少冗余信息,從而最大限度地減少數據異常。異常可能來自分組不當或冗余的信息,并可能造成一系列影響,例如不正確的數據插入或刪除一整組數據。通過使用數據庫規范化,可以避免這些異常,并且通常會釋放內存,以便數據庫能夠更有效地運行。規范化函數應該定期使用,大約一周一次,使數據庫保持新鮮并且沒有意外的問題。

規范化可以消除可能導致刪除整個數據組的異常。
故意的冗余數據,但這種情況通常會發生在數據庫設計者盡了最大努力的情況下。例如,對于一個員工數據庫,員工可能會被列在多個表中。當大量冗余發生時,會出現異常。數據庫管理員通常無法捕獲所有冗余數據,所有數據庫的管理問題都是由一個單一的數據庫管理器來完成的數據庫規范化是刪除或移動重復的信息。如果不需要這些信息,那么它將從數據庫中刪除。對于其他表中需要的數據,規范化旨在創建更好的關系表。規范化函數將分解大型表,將糾正和增強數據之間的關系,并將信息隔離,使數據庫上的數據修改更容易通過減去重復數據,通常會釋放內存,從而使數據庫運行更平穩、更快。
由于拒絕或忘記規范化數據庫,會出現異常情況,并且會使信息變得無用。更新異常是指有人更新數據,但沒有更改目標數據,數據庫將創建一個高度冗余的新記錄。如果出現插入異常,將向數據庫中添加一個記錄,但在新記錄下不能添加任何內容。刪除異常將隨機刪除一條記錄。這些只是數據庫未規范化時發生的一些常見異常。
沒有明確的標準告訴管理員何時應該使用規范化函數來確保數據庫的有效性。調度數據庫一周一次的標準化通常是最好的,因為這樣可以避免一周內添加的所有新信息出現異常。較小的數據庫可能每月進行一次標準化,而且非常大的數據庫應該每周執行兩次,因為數據量越大,發生異常的幾率就越高,但是沒有標準,因此數據庫管理員通常會選擇他或她認為最適合數據庫的時間表。