數(shù)據(jù)庫管理系統(tǒng)(年薪50萬DBA基礎(chǔ))-快速入門教程5-ER圖模型

什么是ER模型?

ER或(實(shí)體關(guān)系模型 Entity Relational Model)是一個(gè)高級(jí)概念數(shù)據(jù)模型圖。 實(shí)體 - 關(guān)系模型基于現(xiàn)實(shí)世界實(shí)體的概念以及它們之間的關(guān)系。

ER建??蓭椭到y(tǒng)地分析數(shù)據(jù)需求,以生成設(shè)計(jì)良好的數(shù)據(jù)庫。 因此,在實(shí)現(xiàn)數(shù)據(jù)庫之前完成ER建模被認(rèn)為是最佳實(shí)踐。

Sample ER Diagram

ER模型的歷史

ER圖是一種可視化工具,有助于表示ER模型。 1971年P(guān)eter Chen提出建立可用于關(guān)系數(shù)據(jù)庫和網(wǎng)絡(luò)的統(tǒng)一約定。 他的目標(biāo)是使用ER模型作為概念建模方法。

什么是ER圖?

實(shí)體關(guān)系圖顯示存儲(chǔ)在數(shù)據(jù)庫中的實(shí)體集的關(guān)系。 換句話說,我們可以說ER圖可以幫助您解釋數(shù)據(jù)庫的邏輯結(jié)構(gòu)。 初看起來,ER圖看起來與流程圖非常相似。 但是,ER圖包含許多專用符號(hào),其含義使該模型獨(dú)一無二。

  • ER模型允許您繪制數(shù)據(jù)庫設(shè)計(jì)
  • 易于使用的圖形工具,用于建模數(shù)據(jù)
  • 廣泛用于數(shù)據(jù)庫設(shè)計(jì)
  • 數(shù)據(jù)庫邏輯結(jié)構(gòu)的GUI表示
  • 識(shí)別系統(tǒng)中存在的實(shí)體以及這些實(shí)體之間的關(guān)系

為什么要使用ER圖?

  • 定義與實(shí)體關(guān)系建模相關(guān)的術(shù)語
  • 預(yù)覽所有表的連接方式,每個(gè)表上的字段
  • 幫助描述實(shí)體,屬性,關(guān)系
  • ER圖可以轉(zhuǎn)換為關(guān)系表,允許您快速構(gòu)建數(shù)據(jù)庫
  • 數(shù)據(jù)庫設(shè)計(jì)人員可以使用ER圖作為在特定軟件應(yīng)用程序中實(shí)現(xiàn)數(shù)據(jù)的藍(lán)圖
  • 借助ERP圖,數(shù)據(jù)庫設(shè)計(jì)人員可以更好地理解數(shù)據(jù)庫中包含的信息
  • 允許ERD與用戶的數(shù)據(jù)庫邏輯結(jié)構(gòu)進(jìn)行通信

ER圖的組成部分

該模型基于三個(gè)基本概念:

實(shí)體
屬性
關(guān)系

Components of the ER Diagram

例如,在大學(xué)數(shù)據(jù)庫中,我們可能有學(xué)生,課程和講師的實(shí)體。 學(xué)生實(shí)體可以具有Rollno,Name和DeptID等屬性。 他們可能與課程和講師有關(guān)系。

什么是實(shí)體?

它可能是一個(gè)物理的東西,或者僅僅是關(guān)于企業(yè)或現(xiàn)實(shí)世界中發(fā)生的事件的事實(shí)。

實(shí)體可以是地點(diǎn),人物,對(duì)象,事件或概念,它將數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫中。 實(shí)體的特征必須具有屬性和唯一鍵。 每個(gè)實(shí)體都由一些代表該實(shí)體的“屬性”組成。

實(shí)體示例:

  • 人:?jiǎn)T工,學(xué)生,病人
  • 地點(diǎn):商店,建筑
  • 對(duì)象:機(jī)器,產(chǎn)品和汽車
  • 事件:銷售,注冊(cè),續(xù)訂
  • 概念:帳戶,課程

實(shí)體的表示法

實(shí)體集:

學(xué)生:實(shí)體集是一組類似的實(shí)體。 它可能包含屬性共享相似值的實(shí)體。 實(shí)體由其屬性表示,也稱為屬性。 所有屬性都有各自的值。 例如,學(xué)生實(shí)體可以具有姓名,年齡,類別作為屬性。

實(shí)體示例:

大學(xué)可能有一些部門。 所有這些部門都聘請(qǐng)了各種講師并提供了幾個(gè)課程。學(xué)生在特定課程中注冊(cè)并注冊(cè)各種課程。 來自特定部門的講師參加每門課程,每位講師都會(huì)教授不同的學(xué)生群體。

關(guān)系

關(guān)系只不過是兩個(gè)或多個(gè)實(shí)體之間的聯(lián)系。 例如,湯姆在化學(xué)系工作。

實(shí)體參與關(guān)系。 我們經(jīng)常可以識(shí)別動(dòng)詞或動(dòng)詞短語的關(guān)系。

例如:

  • 你正在參加這個(gè)講座
  • 我正在講課
  • 只是loke實(shí)體,我們可以根據(jù)關(guān)系類型對(duì)關(guān)系進(jìn)行分類:
  • 一名學(xué)生參加講座
  • 講師正在講課。

弱實(shí)體

弱實(shí)體是一種沒有鍵屬性的實(shí)體。 可以通過考慮另一個(gè)實(shí)體的主鍵來唯一地識(shí)別它。

Weak Entities

在一個(gè)例子中,“Trans No”是ATM中一組交易中的鑒別器。

讓我們通過將它與強(qiáng)實(shí)體進(jìn)行比較來了解更多有關(guān)弱實(shí)體的信息

強(qiáng)實(shí)體集 弱實(shí)體集
強(qiáng)實(shí)體集始終具有主鍵。 它沒有足夠的屬性來構(gòu)建主鍵。
它由矩形符號(hào)表示。 它由雙矩形符號(hào)表示。
它包含由下劃線符號(hào)表示的主鍵。 它包含一個(gè)部分鍵,由虛線下劃線符號(hào)表示。
強(qiáng)實(shí)體集的成員稱為主實(shí)體集。 弱實(shí)體集的成員稱為從實(shí)體集。
主鍵是其有助于識(shí)別其成員的屬性之一。 在弱實(shí)體集中,它是強(qiáng)實(shí)體集的主鍵和部分鍵的組合。
在ER圖中,使用菱形符號(hào)顯示兩個(gè)強(qiáng)實(shí)體集之間的關(guān)系。 通過使用雙菱形符號(hào)顯示的一個(gè)強(qiáng)實(shí)體和弱實(shí)體組之間的關(guān)系。
設(shè)置關(guān)系的強(qiáng)實(shí)體的連接線是單一的。 連接弱實(shí)體集以識(shí)別關(guān)系的線是雙倍的。

屬性

它是實(shí)體類型或關(guān)系類型的單值屬性。

Attributes

例如,講座可能有屬性:時(shí)間,日期,持續(xù)時(shí)間,地點(diǎn)等。

屬性由橢圓表示

**屬性類型** **描述**
**簡(jiǎn)單的屬性** 簡(jiǎn)單屬性不能再進(jìn)一步劃分。 例如,學(xué)生的聯(lián)系電話。 它也被稱為原子價(jià)值。
**復(fù)合屬性** 可以分解復(fù)合屬性。 例如,學(xué)生的全名可以進(jìn)一步分為名字,名字和姓氏。
**派生屬性** 此類屬性不包括在物理數(shù)據(jù)庫中。 但是,它們的值來自數(shù)據(jù)庫中存在的其他屬性。 例如,不應(yīng)直接存儲(chǔ)年齡。 相反,它應(yīng)該來自該員工的出生日期。
**多值屬性** 多值屬性可以包含多個(gè)值。 例如,學(xué)生可以擁有多個(gè)手機(jī)號(hào)碼,電子郵件地址等。

基數(shù)

定義兩個(gè)實(shí)體或?qū)嶓w集之間關(guān)系的數(shù)字屬性。

不同類型的主要關(guān)系是:

一對(duì)一的關(guān)系
一對(duì)多的關(guān)系
愿與一個(gè)人的關(guān)系
多對(duì)多關(guān)系

Cardinality
  • 一對(duì)一的關(guān)系:

來自實(shí)體集合X的一個(gè)實(shí)體可以與實(shí)體集合Y的至多一個(gè)實(shí)體相關(guān)聯(lián),反之亦然。

示例:一名學(xué)生可以注冊(cè)多個(gè)課程。 但是,所有這些課程只有一行回到那個(gè)學(xué)生。

  • 一對(duì)多的關(guān)系

來自實(shí)體集合X的一個(gè)實(shí)體可以與實(shí)體集合Y的多個(gè)實(shí)體相關(guān)聯(lián),但是來自實(shí)體集合Y的實(shí)體可以與至少一個(gè)實(shí)體相關(guān)聯(lián)。

例如,一個(gè)班級(jí)由多個(gè)學(xué)生組成。

  • 多對(duì)一

來自實(shí)體集合X的多于一個(gè)實(shí)體可以與實(shí)體集合Y的至多一個(gè)實(shí)體相關(guān)聯(lián)。然而,來自實(shí)體集合Y的實(shí)體可以與實(shí)體集合X中的多于一個(gè)實(shí)體相關(guān)聯(lián),也可以不與之相關(guān)聯(lián)。

例如,許多學(xué)生屬于同一個(gè)班級(jí)。

  • 多對(duì)多:

來自X的一個(gè)實(shí)體可以與來自Y的多個(gè)實(shí)體相關(guān)聯(lián),反之亦然。

例如,作為一個(gè)群體的學(xué)生與多個(gè)教師相關(guān)聯(lián),并且教師可以與多個(gè)學(xué)生相關(guān)聯(lián)。

ER-圖表符號(hào)

ER-圖表是描述數(shù)據(jù)如何相互關(guān)聯(lián)的數(shù)據(jù)的直觀表示。

  • 矩形:此符號(hào)表示實(shí)體類型
  • 橢圓:符號(hào) 代表屬性
  • 菱形:這個(gè)符號(hào) 代表關(guān)系類型
  • 線:它將屬性與實(shí)體類型和實(shí)體類型與其他關(guān)系類型相關(guān)聯(lián)
  • 主鍵:屬性帶下劃線
  • 雙橢圓:表示多值屬性
ER- Diagram Notations

參考資料

創(chuàng)建ERD的步驟

Steps to Create an ERD

讓我們用一個(gè)例子來研究它們:

在大學(xué)里,學(xué)生就讀于課程。 必須將學(xué)生分配到至少一門或多門課程。 每門課程由一位教授授課。 為了保持教學(xué)質(zhì)量,教授只能提供一門課程

實(shí)體識(shí)別

我們有三個(gè)實(shí)體

  • 學(xué)生
  • 課程
  • 教授
關(guān)系識(shí)別

我們有以下兩種關(guān)系

  • 學(xué)生被分配了一門課程
  • 教授開設(shè)了一門課程
基數(shù)識(shí)別

對(duì)于他們的問題陳述,我們知道,

  • 可以為學(xué)生分配多個(gè)課程
  • 教授只能提供一門課程
識(shí)別屬性

您需要研究組織當(dāng)前維護(hù)的文件,表單,報(bào)告和數(shù)據(jù),以識(shí)別屬性。 您還可以與各利益相關(guān)方進(jìn)行面談,以確定實(shí)體。 最初,識(shí)別屬性而不將其映射到特定實(shí)體非常重要。

一旦有了屬性列表,就需要將它們映射到已識(shí)別的實(shí)體。 確保要將屬性與一個(gè)實(shí)體配對(duì)。 如果您認(rèn)為屬性應(yīng)屬于多個(gè)實(shí)體,請(qǐng)使用修飾符使其唯一。

映射完成后,識(shí)別主鍵。

對(duì)于課程實(shí)體,屬性可以是持續(xù)時(shí)間,學(xué)分,作業(yè)等。為了方便起見,我們只考慮了一個(gè)屬性。

創(chuàng)建ERD

ERD圖的更現(xiàn)代的表示

Create the ERD

制定有效的ER圖的最佳實(shí)踐

  • 消除任何冗余實(shí)體或關(guān)系
  • 確保所有實(shí)體和關(guān)系都已正確標(biāo)記
  • ER圖可能有各種有效的方法。 您需要確保ER圖支持您需要存儲(chǔ)的所有數(shù)據(jù)
  • 確保每個(gè)實(shí)體僅在ER圖中出現(xiàn)一次
  • 命名每個(gè)關(guān)系,實(shí)體和屬性都在圖表中表示
  • 永遠(yuǎn)不要將關(guān)系彼此聯(lián)系起來
  • 使用顏色突出顯示ER圖的重要部分

小結(jié)

  • ER模型是高級(jí)數(shù)據(jù)模型圖
  • ER圖是一種可視化工具,有助于表示ER模型
  • 實(shí)體關(guān)系圖顯示存儲(chǔ)在數(shù)據(jù)庫中的實(shí)體集的關(guān)系
  • ER圖可幫助您定義與實(shí)體關(guān)系建模相關(guān)的術(shù)語
  • ER模型基于三個(gè)基本概念:實(shí)體,屬性和關(guān)系
  • 實(shí)體可以是地點(diǎn),人物,對(duì)象,事件或概念,它將數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫中
  • 關(guān)系只不過是兩個(gè)或多個(gè)實(shí)體之間的聯(lián)系
  • 弱實(shí)體是一種沒有其關(guān)鍵屬性的實(shí)體,實(shí)體類型或關(guān)系類型的單值屬性,可以幫助您定義兩個(gè)實(shí)體或?qū)嶓w集之間關(guān)系的數(shù)字屬性
  • ER-圖表是描述數(shù)據(jù)如何相互關(guān)聯(lián)的數(shù)據(jù)的直觀表示
  • 在繪制ER圖時(shí),您需要確保所有實(shí)體和關(guān)系都已正確標(biāo)記。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容