天天看點

如何畫資料庫ER圖

一、ER圖基本概念

ER圖分為實體、屬性、關系三個核心部分。在ER圖中,實體是長方形,屬性是橢圓形,關系為菱形。

1、實體(entity)

即資料模型中的資料對象(即資料表),用長方體來表示,每個實體都有自己的實體成員(entity member)或者說實體對象(entity instance),例如學生實體裡包括張三、李四等。

實體還會細分為弱實體和複合實體,一個實體必須依賴于另一個實體存在,那麼前者是弱實體,後者是強實體,弱實體必須依賴強實體存在,例如上圖的學生實體和成績單實體,成績單依賴于學生實體而存在,是以學生是強實體,而成績單是弱實體。

弱實體和強實體的聯系必然隻有1:N或者1:1,這是由于弱實體完全依賴于強實體,強實體不存在,那麼弱實體就不存在,是以弱實體是完全參與聯系的,是以弱實體與聯系之間的聯系也是用的雙線菱形。

複合實體也稱聯合實體或橋接實體,常常用于實作兩個或多個實體間的M:N聯系,它由每個關聯實體的主碼組成,用長方體内加一個菱形來表示。

2、屬性(attribute)

即實體所具有的屬性,例如學生具有姓名、學号、年級等屬性,用橢圓形表示,屬性分為唯一屬性( unique attribute)和非唯一屬性,唯一屬性指的是唯一可用來辨別該實體執行個體或者成員的屬性,用下劃線表示,一般來講實體都至少有一個唯一屬性。

ER圖的屬性還細分為複合屬性、多值屬性和派生屬性、可選屬性,同時還有用來表示聯系的屬性,稱為聯系屬性。

    複合屬性是指具有多個屬性的組合,例如名字屬性,它可以包含姓氏屬性和名字屬性。複合屬性也有唯一屬性,例如學生的所在班級屬性,由于多個年級都有班級,是以單單班級屬性是不唯一的,但是和年級組成的複合屬性後則可以比對成唯一屬性。

    多值屬性:一個實體的某個屬性可以有多個不同的取值,稱為多值屬性。例如一本書的分類屬性,這本書有多個分類。

    派生屬性:是非永久性存于資料庫的屬性。派生屬性的值可以從别的屬性值或其他資料(如目前日期)派生出來,用虛線橢圓表示。

    可選屬性:并不是所有的屬性都必須有值,有些屬性的可以沒有值,這就是可選屬性,在橢圓的文字後用(O)來表示。

    聯系屬性:聯系屬于使用者表示多個實體之間聯系所具有的屬性,一般來講M:N的兩個實體的聯系具有聯系屬性,在1:1和1:M的實體聯系中聯系屬性并不必要。

3、關系(relationship)

用來表現資料對象與資料對象之間的聯系,例如學生的實體和成績表的實體之間有一定的聯系,每個學生都有自己的成績表,這就是一種關系,關系用菱形來表示。

關聯關系有三種:

    1對1(1:1):指對于實體集A與實體集B,A中的每一個實體至多與B中一個實體有關系;反之,在實體集B中的每個實體至多與實體集A中一個實體有關系。

    1對多(1:N):1對多關系是指實體集A與實體集B中至少有N(N>0)個實體有關系;并且實體集B中每一個實體至多與實體集A中一個實體有關系。

    多對多(M:N):多對多關系是指實體集A中的每一個實體與實體集B中至少有M(M>0)個實體有關系,并且實體集B中的每一個實體與實體集A中的至少N(N>0)個實體有關系。

二、ER實體補充講解

1、ER的實體分為弱實體 和 複合實體:

(1)弱實體:一個實體必須依賴另一個實體存在,那麼前者是弱實體,後者是強實體。

弱實體和強實體的聯系必然隻有1:N或者1:1,這是由于弱實體完全依賴于強實體,強實體不存在,那麼弱實體就不存在,是以弱實體是完全參與聯系的,是以弱實體與聯系之間的聯系也是用的雙線菱形。

如何畫資料庫ER圖

圖一-栗子.png

2,ER圖的屬性分為複合屬性、多值屬性和派生屬性、可選屬性,同時還有用來表示聯系的屬性,稱為聯系屬性;

(1)複合屬性(composite attribute):

複合屬性是指具有多個屬性的組合,例如名字屬性,它可以包含姓氏屬性和名字屬性,如下圖:

如何畫資料庫ER圖

圖三.png

(2)多值屬性(multivalued attribute):

一個實體的某個屬性可以有多個不同的取值,例如一本書的分類屬性,這本書有多個分類,例如科學、醫學等,這個分類就是多值屬性, 用雙線橢圓表示。

如何畫資料庫ER圖

圖四.png

(3)派生屬性(derivers attribute):

是非永久性存于資料庫的屬性。派生屬性的值可以從别的屬性值或其他資料(如目前日期)派生出來,用虛線橢圓表示,如下圖。

如何畫資料庫ER圖

圖五.png

(4)可選屬性(optional attribute):

并不是所有的屬性都必須有值,有些屬性的可以沒有值,這就是可選屬性,在橢圓的文字後用(O)來表示,如下圖的位址就是一個可選屬性。

如何畫資料庫ER圖

圖六.png

(5)聯系屬性:

聯系屬于使用者表示多個實體之間聯系所具有的屬性,一般來講M:N的兩個實體的聯系具有聯系屬性,在1:1和1:M的實體聯系中聯系屬性并不必要。

如何畫資料庫ER圖

圖七.png

三、ER圖執行個體

繼續閱讀