終極實體關係圖教程(ER 圖)

已發表: 2017-03-07

所以你想學習實體關係圖? 本 ER 圖教程將介紹它們的用法、歷史、符號、符號以及如何使用我們的 ER 圖軟件來繪製它們。 我們還添加了一些模板供您快速入門。

什麼是ER圖?

實體關係圖 (ERD) 是系統內不同實體以及它們如何相互關聯的可視化表示。 例如,元素作家、小說和消費者可以使用 ER 圖描述如下:

招生系統ER圖模板(點擊圖片在線修改)

ER 圖的歷史

儘管數據建模在 1970 年代左右已成為必需品,但沒有標準的方法來為數據庫或業務流程建模。 儘管提出並討論了許多解決方案,但沒有一個被廣泛採用。

Peter Chen 在他的論文“實體關係模型——邁向統一的數據視圖”中引入了廣泛採用的 ER 模型。 重點是實體和關係,他還介紹了用於數據庫設計的圖表表示。

他的模型受到查爾斯巴赫曼介紹的數據結構圖的啟發。 ER 圖的早期形式之一,巴赫曼圖以他的名字命名。

有關 ER 圖和數據建模評估的詳細歷史,請參閱本文。

ER圖有什麼用?

ER圖的用途是什麼? 它們在哪裡使用? 儘管它們可用於對幾乎任何系統進行建模,但它們主要用於以下領域。

數據庫設計中的 ER 模型

它們被廣泛用於設計關係數據庫。 ER 模式中的實體成為表、屬性並轉換了數據庫模式。 由於它們可用於可視化數據庫表及其關係,因此通常也用於數據庫故障排除。

軟件工程中的實體關係圖

實體關係圖在軟件項目的規劃階段用於軟件工程。 它們有助於識別不同的系統元素及其相互關係。 它通常用作眾所周知的數據流圖或 DFD 的基礎。

例如,零售店中使用的庫存軟件將有一個數據庫來監控諸如採購、商品、商品類型、商品來源和商品價格等元素。 通過 ER 圖呈現此信息將是這樣的:

具有屬性的實體的 ER 圖示例
具有屬性的實體的 ER 圖示例

在圖中,橢圓形內的信息是特定實體的屬性。

實體關係圖 (ERD) 符號和符號

本 ER 圖教程中討論的 ER 圖符號
ER圖中的元素

ER 圖中包含三個基本元素:實體、屬性、關係。 還有更多基於主要元素的元素。 它們是弱實體、多值屬性、派生屬性、弱關係和遞歸關係。 基數和序數是 ER 圖中用於進一步定義關係的另外兩個符號。

實體

實體可以是與給定係統相關的人、地點、事件或對象。 例如,學校系統可能包括學生、教師、專業課程、科目、費用和其他項目。 實體在 ER 圖中用矩形表示,並使用單數名詞命名。

弱實體

弱實體是依賴於另一個實體存在的實體。 用更專業的術語來說,它可以被定義為一個不能由它自己的屬性來識別的實體。 它使用外鍵結合其屬性來形成主鍵。 像訂單項這樣的實體就是一個很好的例子。 沒有訂單,訂單項將毫無意義,因此取決於訂單的存在。

實體關係圖中的弱實體
ER圖中的弱實體示例

屬性

屬性是實體、關係或其他屬性的屬性、特徵或特徵。 例如,屬性 Inventory Item Name 是實體 Inventory Item 的屬性。 一個實體可以有盡可能多的屬性。 同時,屬性也可以有自己特定的屬性。 例如,屬性“客戶地址”可以具有屬性編號、街道、城市和州。 這些被稱為複合屬性。 請注意,為簡單起見,某些頂級 ER 圖不顯示屬性。 然而,在那些這樣做的情況下,屬性由橢圓形表示。

ER 圖中的屬性
ER圖中的屬性,注意一個屬性可以有自己的屬性(複合屬性)

多值屬性

如果一個屬性可以有多個值,則稱為多值屬性。 需要注意的是,這與具有自己屬性的屬性不同。 例如,一個教師實體可以有多個主題值。

實體關係圖中的多值屬性
多值屬性示例

派生屬性

基於另一個屬性的屬性。 這在 ER 圖中很少見。 例如,對於一個圓,面積可以從半徑得出。

ER圖中的派生屬性
ER圖中的派生屬性

關係

關係描述實體如何交互。 例如,實體“Carpenter”可以通過關係“builds”或“makes”與實體“table”相關聯。 關係由菱形表示並使用動詞標記。

ER圖中的關係
在實體關係圖中使用關係

遞歸關係

如果同一個實體多次參與關係,則稱為遞歸關係。 在下面的示例中,員工可以是主管並被監督,因此存在遞歸關係。

ER圖中的遞歸關係
ER圖中的遞歸關係示例

基數和序數

這兩個通過將關係置於數字的上下文中來進一步定義實體之間的關係。 例如,在電子郵件系統中,一個帳戶可以有多個聯繫人。 在這種情況下,這種關係遵循“一對多”模型。 在 ER 圖中,有許多用於表示基數的符號。 Chen、UML、Crow's foot、Bachman 是一些流行的符號。 Creately 支持 Chen、UML 和 Crow's foot 符號。以下示例使用 UML 來顯示基數。

ER圖中的基數
使用 UML 表示法的 ER 圖中的基數

如何繪製 ER 圖

以下幾點顯示瞭如何創建 ER 圖。

  1. 識別系統中的所有實體。 一個實體在特定圖表中應該只出現一次。 為所有實體創建矩形並正確命名它們。
  2. 識別實體之間的關係。 使用一條線將它們連接起來,並在中間添加一個菱形來描述這種關係。
  3. 為實體添加屬性。 給出有意義的屬性名稱,以便易於理解。

聽起來很簡單吧? 在復雜的系統中,識別關係可能是一場噩夢。 這是你只有通過練習才能完善的東西。

快速創建您的 ER 圖和數據庫設計,與您的團隊協作,隨著設計的發展維護和跟踪更改。

創建 ERD

ER圖最佳實踐

  1. 為圖中的每個實體、屬性和關係提供準確且適當的名稱。 簡單而熟悉的術語總是勝過模糊的、技術性的詞。 在命名實體時,請記住使用單數名詞。 但是,形容詞可用於區分屬於同一類的實體(例如,兼職員工和全職員工)。 同時,屬性名稱必須有意義、唯一、獨立於系統且易於理解。
  2. 刪除實體之間模糊、冗餘或不必要的關係。
  3. 永遠不要將一段關係與另一段關係聯繫起來。
  4. 有效利用色彩。 您可以使用顏色對相似實體進行分類或突出顯示圖表中的關鍵區域。

使用 Creately 繪製 ER 圖

您可以手動繪製實體關係圖,尤其是當您只是非正式地向同行展示簡單系統時。 但是,對於更複雜的系統和外部受眾,您需要 Creately 等圖表軟件來製作具有視覺吸引力且精確的 ER 圖。 Creately 作為在線服務提供的 ER 圖表軟件非常易於使用,並且比購買許可軟件便宜得多。 由於其對協作的強大支持,它也非常適合開發團隊。

ER 圖模板

以下是一些 ER 圖模板,您可以快速入門。 單擊圖像並在打開的新頁面中單擊“用作模板”按鈕。 有關更多模板,請查看我們的 ER 圖模板部分。

ER圖模板
考試數據庫的ER圖模板(點擊圖片用作模板)

用於快速入門的基本 ER 圖模板

實體關係圖模板
基本 ER 圖模板(單擊以用作模板)

ER圖的好處

ER 圖構成了用於創建和操作數據庫的非常有用的框架。 首先,ER圖很容易理解,不需要一個人接受廣泛的培訓就可以有效、準確地使用它。 這意味著設計人員可以使用 ER 圖輕鬆地與開發人員、客戶和最終用戶進行交流,無論他們的 IT 熟練程度如何。

其次,ER 圖很容易轉換成關係表,可以用來快速構建數據庫。 此外,數據庫開發人員可以直接使用 ER 圖作為在特定軟件應用程序中實現數據的藍圖。

最後,ER 圖可以應用於其他環境,例如描述組織內的不同關係和操作。

對 ER 圖教程的反饋

我已盡力涵蓋您需要了解的有關 ER 圖的所有信息。 如果您認為我錯過了某些部分,請務必在評論部分中提及。 這也是一個提問的好地方。

參考

1. 維基百科上發布的實體關係模型。
2. Mike Chapple 在 About.com 網站上發布的實體關係圖