uml與數據庫設計


一、類之間的關系如下圖所示:

二、UML與數據庫設計主要討論的內容:

三、依賴關系強調的是類操作間的使用關系,類圖到表結構的映射中並不涉及這種關系,所以只需討論泛化關系、關聯關系到表的映身規范。

   1.泛化關系的映射

    (1)、將父類和子類均映射為表

      優點:表結構的更改非常方便

      缺點:表的數量較多,相關的數據分散在不同的表中,數據讀寫時間較長,報表的生成較為困難。

    (2)、只將子表映射為表

      優點:表的數量較少,相關的數據集中在一個表中,數據的讀寫較為方便。

      缺點:表結構的修改較為困難,因為修改父類后,要同時修改子類對應的表。

    (3)、只將父類映射為表

      優點:表的數量少,數據讀寫方便

      缺點:耦合性強,需要增加一列,以表時類的角色,浪費存儲空間較多。

    綜合:以上三種方法各有所長,在實際應用中,根據具體情況選用。

           一般情況下,建議選用第二種方式,即只將子類映射為表,各表包含子類自身的屬性和繼承自父類的屬性。

   2.關聯關系的映射

    關聯關系分為一對一關聯、一對多關聯和多對多關聯。

    (1)、一對一關聯映射

      將相關的兩個類分別映射成兩張表,並將任意一張表的主鍵放入另一張表作為外鍵。

    (2)一對多關聯映射

      將關聯的兩個類映射為兩張表,並將“一”表的主鍵放在“多”表中作為外鍵。

    (3)、多對多關聯映射

      》為相關聯的兩個類分別建立兩張表

      》再建一個關聯表。這個關聯表的屬性由兩部分組成:前兩個表的主鍵,關聯本身的屬性。

    綜合:關聯關系要為每一個類生成一個數據庫表。

            關系映射:

        1)、一對一、一對多的關系映射為數據庫表的主外鍵關聯(一方的主鍵加入另一方成為外鍵)

        2)、多多的關系映射:產生第三張表,將兩個多方的主鍵加入其中成為外鍵,兩個外鍵的組合成為主鍵。

    利用數據庫三范式檢查表,從而考察類圖的分析是否合理,消除冗余數據。檢查數據是否能夠反映用例視圖的需要;進一步與用戶再次確認數據的使用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM