Home >> Blog >> 什麼是 er model ?

什麼是 er model ?

什麼是 er model ?

實體關係模型(ER 建模)是一種圖形化的資料庫設計方法。它是一種高級資料模型,用於定義特定軟體系統的資料元素及其關係。ER 模型用於表示現實世界的對象。

實體是現實世界中可與周圍環境區分開來的事物或對象。例如,組織的每個員工都是一個單獨的實體。以下是實體的一些主要特徵。

一個實體有一組屬性。

在本教學中,您將學習 -

  • 增強的實體關係 (EER) 模型
  • 為什麼要使用 ER 模型?
  • “MyFlix”庫中的實體
  • 定義實體之間的關係

讓我們再次考慮我們的第一個範例。組織的員工是一個實體。如果“彼得”是SEO搜尋引擎優化公司的一名軟體工程師(員工),他可以擁有姓名、年齡、體重、身高等屬性(屬性)。很明顯,這些屬性確實包含與他相關的值。

每個屬性都可以有Values。在大多數情況下,單個屬性只有一個值。但是屬性也有可能具有多個值。例如,彼得的年齡只有一個值。但是他的“電話號碼”屬性可以有多個值。

實體之間可以有關係。讓我們考慮一個最簡單的例子。假設每個 八拓 軟體工程師都有一台電腦。很明顯,彼得的電腦也是一個實體。Peter 正在使用那台電腦,而 Peter 使用的是同一台電腦。換句話說,彼得和他的電腦之間存在相互關係。

在實體關係建模中,我們對實體、它們的屬性和實體之間的關係進行建模。

增強的實體關係 (EER) 模型

增強的實體關係 (EER) 模型是一種高級資料模型,它提供了對原始實體關係(ER) 模型的擴展。EER Models 支持更多細節設計。EER 建模作為對高度複雜的資料庫建模的解決方案而出現。

EER 使用 UML 表示法。UML 是 Unified Modeling Language 的首字母縮寫;它是設計面向對象系統時使用的通用建模語言。實體表示為類圖。關係表示為實體之間的關聯。下圖說明了使用UML 表示法的 ER 圖。

什麼是 ER 建模?通過範例學習

為什麼要使用 ER 模型?

現在您可能會想,既然我們可以在沒有 ER 建模的情況下簡單地創建資料庫及其所有對象,為什麼還要使用 ER 建模呢?設計資料庫時面臨的挑戰之一是設計人員、開發人員和最終用戶傾向於以不同的方式查看資料及其使用。如果這種情況不加以控制,我們最終可能會產生一個不滿足用戶要求的資料庫系統。

所有利益相關者(技術用戶和非技術用戶)都理解的通信工具對於生成滿足用戶要求的資料庫系統至關重要。ER 模型就是此類工具的範例。

ER 圖還可以提高用戶的工作效率,因為它們可以很容易地轉換為關係表。

案例研究:“MyFlix”視頻庫的 ER 圖

現在讓我們使用 MyFlix 視頻庫資料庫系統來幫助理解 ER 圖的概念。在本教學的其餘部分,我們將使用此資料庫進行所有動手操作

MyFlix 是一家向其成員出租電影的商業實體。MyFlix 一直在手動存儲其記錄。管理層現在想要遷移到 DBMS

讓我們看一下為這個資料庫開發 EER 圖的步驟——

  • 識別實體並確定它們之間存在的關係。
  • 每個實體、屬性和關係都應該有適當的名稱,非技術人員也可以輕鬆理解。
  • 關係不應直接相互連接。關係應該連接實體。
  • 給定實體中的每個屬性都應該有一個唯一的名稱。

“MyFlix”庫中的實體

我們的ER 圖中要包含的實體是:

  • 成員——該實體將持有成員信息。
  • 電影——該實體將保存有關電影的信息
  • 類別——該實體將保存將電影分為不同類別的信息,例如“戲劇”、“動作”和“史詩”等。
  • 電影出租——該實體將保存有關出租給會員的電影的信息。
  • 付款- 該實體將保存有關成員付款的信息。

定義實體之間的關係

會員和電影

  • 會員可以在給定時間段內租用多部電影。
  • 在給定時間段內,一部電影可以由多個成員租借。

從上面的場景中,我們可以看出關係的本質是多對多的。關係資料庫不支持多對多關係。我們需要引入一個聯結實體。這是 MovieRentals 實體所扮演的角色。它與 members 表是一對多的關係,而與 movies 表是一對多的關係。

電影和類別實體

以下內容適用於電影和類別。

  • 一部電影只能屬於一個類別,但一個類別可以有多個電影。

我們可以由此推斷,類別和電影表之間關係的性質是一對多的。

會員和支付實體

以下關於會員和付款的情況適用

  • 會員只能擁有一個帳戶,但可以進行多次付款。

我們可以由此推斷,成員和支付實體之間的關係本質是一對多的。

現在讓我們使用MySQL Workbench創建 EER 模型

在 MySQL 工作台中,點擊 – “+” 按鈕

什麼是 ER 建模?通過範例學習

雙擊添加圖表按鈕以打開 ER 圖表的工作區。

什麼是 ER 建模?通過範例學習

出現以下窗口

什麼是 ER 建模?通過範例學習

讓我們看看我們將使用的兩個對象。

  • 什麼是 ER 建模? 通過範例學習表對象允許我們創建實體並定義與特定實體關聯的屬性。
  • 什麼是 ER 建模? 通過範例學習放置關係按鈕允許我們定義實體之間的關係。

    成員的實體將具有以下屬性

  • 會員號碼
  • 全名
  • 性別
  • 出生日期
  • 實際地址
  • 郵寄地址

現在讓我們創建成員表

  1. 從工具面板中拖動表格對象
  2. 將其放入工作區。出現名為表 1 的實體
  3. 雙擊它。出現如下所示的屬性窗口

什麼是 ER 建模?通過範例學習

下一個 ,

  • 將表 1 更改為成員
  • 將默認的 idtable1 編輯為 members_number
  • 單擊下一行以添加下一個字段
  • 對成員實體中標識的所有屬性執行相同操作。

您的屬性窗口現在應該如下所示。

什麼是 ER 建模?通過範例學習

對所有已識別的實體重複上述步驟。

您的圖表工作區現在應該如下所示。

什麼是 ER 建模?通過範例學習

讓我們在會員和電影租賃之間建立關係

  1. 也使用現有列選擇位置關係
  2. 單擊成員表中的 members_number
  3. 單擊 MovieRentals 表中的 reference_number

什麼是 ER 建模?通過範例學習

對其他關係重複上述步驟。你的 ER 圖現在應該是這樣的——

什麼是 ER 建模?通過範例學習

概括

  • ER 的完整形式是實體和關係圖。它們在資料庫設計過程中起著非常重要的作用。它們充當技術人員和非技術人員的非技術交流工具。
  • 實體代表現實世界的事物;它們可以是概念上的銷售訂單,也可以是實體的,例如客戶。
  • 所有實體都必須有唯一的名稱。
  • ER 模型還允許資料庫設計者識別和定義實體之間存在的關係。

sql

資料庫

資料庫

透過

entities-relational model ,簡稱

資料模式( physical data

資料模式( conceptual data

資料模式( representational data

資料庫系統為了解決真實世界的問題,將真實世界的情況抽象化。而 資料模式( data

physical data model

conceptual data model

representational data model