梅紅
摘要:在數據庫設計的過程中規范化理論是最為重要的部分,直接影響關系模式的設計與數據庫設計的成功與否。基于此,為了保證研究效率,要重視結合數據庫設計實際,有效的分析規范化理論,保障數據庫設計符合系統應用需求,深入研究規范化理論在數據設計中的應用,以及規范化理論的重要作用是非常必要的。
關鍵詞:規范化理論;數據庫設計;重要作用
中圖分類號:TP311.13 文獻標識碼:A 文章編號:1007-9416(2019)10-0217-02
0 引言
進行數據庫設計需要從多個方面入手,包括需求分析、邏輯設計、概念設計等等。在進行概念設計的過程中,設計者要從多個角度入手,對實體以及相關屬性進行抽取,這樣才能夠審計出不同的E-R圖,再將E-R圖進行數據表轉換。在這個過程中,規范化理論的作用就凸顯出來,規范化理論是未然范式建立的,是研究不合理的關系模式轉化為合理的關系模式的理論,同時也與數據庫設計緊密相關。下面通過實踐,有效的對其進行深入探索。
1 關系數據庫規范化
為了保障每個環節設計的順利進行,需要對不同關系進行研究與定義,關系數據庫規范化理論對“設計不合理的關系模式”向“合理的關系模式”轉化進行研究,其具體的思路,以合理分解關系為基礎,有效的消除相關數據依賴,從而解決數據冗余,從實際分析,其中的每一個關系都是在一定的制約條件下存在的,這種存在方式被稱之為范式。較低范式關系可以通過轉換,成為多個較高級的范式關系的集合,這種轉換是通過無損分解實現的,這個轉換的過程就是關系規范化。
2 關系模式規范化的重要性
關系模式是研究的重點,也是數據庫設計過程重要研究內容。在應用的過程中,如果遇到關系規范化的問題,應該結合實際案例,開展實踐設計,以提高數據庫設計效率。如:有一個企業員工管理數據庫,其中包括使用者(老板、員工等)的工作號、姓名、性別、工作科室、工作范圍、考核成績等,根據這些信息,要設計有效的系統關系模式,并結合關系模式,確定使用者的相關信息(工作號、姓名、性別、工作科室、工作范圍、考核成績)。在構建關系模式過程中,要進行有效分析,針對如下問題進行解決:
2.1 數據冗余度大
數據冗余是指數據之間的重復,也可以說是同一數據存儲在不同數據文件中的現象。數據應該盡可能少地冗余,這意味著重復數據應該減少到最少。比如說,一個科室的工作人員的“工作范圍”不應該被存儲在不同的表中, 因為這里的“工作范圍”是科室人員的一個屬性。如果存在過多的冗余數據,這就意味著要占用了更多的物理空間,同時也對數據的維護和一致性檢查帶來了問題,當這個員工的“工作范圍”變化時,冗余數據會導致對多個表的更新動作,如果有一個表不幸被忽略了,那么就可能導致數據的不一致性。
2.2 插入異常
數據插入異常是指應該插入數據的未被插入,這里的“未”并非指系統或代碼異常,而是說數據庫設計上有問題,某條記錄在符合了所在領域的要求后仍無法存入,說明表中存在了非當前領域的屬性。例如,“科室工作人員”表不應該存在“科室主任”這個屬性,因為這會導致一個問題:如果這個科室新進入的工作人員沒有科室主任的關聯信息,就無法通過信息插入模式寫入數據庫。
2.3 刪除異常
指的是當你需要刪除的時候,數據不能被刪除而導致的刪除錯誤;或者是刪除數據后導致數據庫的某些關聯錯誤。例如,如果一個科室的全部工作者都轉去其他科室,同時,這個科室沒有新的工作人員轉入,那么可以采取刪除模式。但是刪除后,科室類型還在,數據庫中卻找不到相關科室信息。從實際分析,科室工作人員關系就不能與合理的數據庫模式繼續關聯。為了構建合理的模式,必然要避免類似問題產生,以進一步提高工作效率。
3 規范化理論在數據庫設計中的應用分析
規范化理論的進一步應用,有利于完善數據庫設計,能夠保證數據庫設計效率和數據庫的獨立性和完善性,基于此,對于設計者來說,要注重結合需求實際,加強對于數據庫規范化設計的認識。
3.1 第一范式(1NF)
如果一個關系模式中R的所有屬性都是原子的,那么,從實際分析,該模式中的元素不可再分,這個關系模式被稱為1NF關系模式。在這個關系模式中,不存在可分數據行,這樣滿足第一范式的要求,實體之間為一對一關系,否則實體在同一列中有多個值,1NF規范性不足,限制太少,信息過于復雜。
3.2 第二范式(2NF)
如果關系模式R(U,F)屬于1NF,并且R中的每個非主屬性都完全依賴于關系碼,因此,R(U,F)屬于2NF。
將1NF進行有效的轉化,使其轉化成2NF,其轉化階段就是利用投影分解法進行的。結合分解分析,兩者之間的關系從屬于2NF,若進一步分析,會得到以下問題,需要加強設計認識。
(1)數據冗余度過大,科室主任信息會出現重復儲存的現象。(2)修改麻煩,如果一個科室換了主任,那么進行修改,就需要針對相應的工作者所對應的科室主任名字,如果忽視了其中一個修改,就會造成數據的不同。(3)插入異常,如果從新開設了一個新的科室,那么在沒有招入新工作人員的情況下,不能插入相對應的信息。(4)刪除異常,如果想要刪除其中一名工作者的記錄,比如李明,那么整個元組就都會消失,連同一個科室的信息都會被刪除,這樣就會出現大量信息丟失的情況。
3.3 第三范式(3NF)
若R(U,F)都從屬于2NF,則需要依靠關系進行分析,要嚴格按關系進行設計。否則R(U,F)屬于3NF。通過進一步分析,總結出的分解方式是:傳遞函數需要進行單獨提取,可以分成基本信息與科室信息兩部分,以兩個關系模式進行體現,具體如下:
工作者基本信息(工作號、性別、科室);
科室信息(科室類型、科室主任);
這個時候,兩個模式都屬于3NF,也就是可以避免出現如上問題。再次對第一次分解后的工作者績效成績關系模式進行統計與研究,這樣一來,滿足了3NF,但實際過程,還存在一定不足:數據冗余量依舊很大,修改依舊比較麻煩,另外,其中還是存在插入異常以及刪除異常的問題。
4 關系數據庫規范化的原則研究
關系數據庫規范化有兩個重要原則:(1)無損連接。(2)保持函數依賴。無損連接過程以信息的安全為主,在此過程不能丟失信息,通過分解后,仍然可以回復到原來的關系,其作用是保證分解數據的價值。保持函數依賴原則是對關系進行分解后的要求,不能破壞數據信息,要保證必要的函數依賴,這樣的分解模式是等價的。通過規范化管理,實現了無損連接,利于數據庫運行,能夠保證其運行效率與準確性。
5 結語
數據庫構建過程中規范化設計具有明顯的優勢,但是,從本文所提出實際情況分析,若為了不斷提高設計效率,要重視以規范化的模式研究,積極制定更加高效的數據庫設計方案,并有效的進行實踐運用,從而才能保證數據庫運行質量,總之,本文的研究,旨在為相關設計者提供支持,希望能夠更好的促進數據庫建設完善。
參考文獻
[1] 黃雅瓊.數據庫邏輯設計中的規范化[J].信息記錄材料,2018,19(03):247-248.
[2] 楊靖祎.規范和設計技巧在數據庫設計中的研究[J].中國衛生產業,2017,14(29):70-71.