2017-04-21 111 views
0

我已經設計用於在下面給出一所大學的數據庫關係模型。 現在我被要求製作這個數據庫的ER圖。我只是想知道是否有任何工具可以從關係模式中生成ER圖。如果不是,那麼從關係模型製作ER圖的步驟是什麼? enter image description here關係模式ER圖

回答

0

我不知道任何可以從關係模型生成適當的ER圖的工具。這種工具的一個難點是並非所有的關係模型都可以解釋爲ER模型。雖然關係模型可以表達任何有限的事實集合(因爲它等價於一階邏輯),但實體關係模型更加有限。

到關係模型轉換爲ER圖,我建議以下步驟:

  1. ER模型的良好理解將是有價值的。研究陳的論文The Entity-Relationship Model - Toward a Unified View of Data

  2. 對於每一列,確定它是否表示設置一個實體或值集合。實體鍵通常是一個表中的主鍵,其他鍵中的外鍵。值集通常代表標籤和度量值,並位於相關列中。

    • 例如,在teacherT_IDdept_name是實體按鍵,而namepassword代表值集。
  3. 確定關係。關係由同一個表中的兩個或多個實體關鍵字表示,其中至少有一個是主鍵的一部分。

    • 例如,在teacher,一對(T_ID, dept_name)表示鑑定T_IDdept_name的實體集之間的關係。我們可以調用那些實體集合teacherdepartment,但不要將它們與具有相同名稱的表混淆。另一個例子是advisor (T_ID, S_ID)
  4. 識別屬性。屬性是從實體集合或關係到值集合的映射。表的主鍵將確定實體或關係集(原子或複合PK),與依賴列(值集)相關聯,從而形成屬性。

    • 例如,在teacherT_ID -> name是一個屬性,並T_ID -> password是另一回事。
  5. 做一個圖。用矩形表示每個實體集,並用菱形設置每個關係。將關係連接到相關的實體集。將鍵和屬性繪製爲附加到確定實體或關係集的橢圓。我們不會爲關係繪製關鍵字 - 它們由相關實體集的關鍵字確定。

這僅僅是一個基本的出發點 - 的過程實際上是比較複雜的,因爲我們需要看出來的弱密鑰,弱實體集,確定關係,關聯實體集,全部或部分參與,關係基數。

同樣,我強烈建議你研究陳的所有細節。

PS。我相信section的主鍵(以及teachestakes中的對應外鍵)不正確。我懷疑主要應該只有sec_id,但由於我不確定你的模型實際表示什麼(除了我自己對錶和列名稱的解釋),我不能肯定地說。