實體關係模型(Entity-relationship model)

實體關係模型(Entity-relationship model)由美籍華裔計算機科學家陳品山(Peter Chen)發明,是概念數據模型的高層描述所使用的數據模型或模式圖,它為表述這種實體聯繫模式圖形式的數據模型提供了圖形符號。

下圖就是一個ER Model的範例 (可點選放大):

下圖是ER Model常用的符號:


實體(Entity)以長方形表示,實體可以被(粗略地)認為是名詞,如計算機、僱員、歌曲、數學定理。

屬性(Attribute)以橢圓形表示,實體和關聯都可以有屬性,用來代表實體或是關聯外在可以描述的值,例如「國民」這個實體有「身份證字號」這個屬性,「員工」與「公司」間的「雇用」關聯,會有一個「雇用開始日期」屬性。

關聯(Relationship)以菱形表示,關聯描述了兩個或更多實體相互如何關聯。聯繫可以被(粗略地)認為是動詞,如:在公司和計算機之間的擁有關聯,在僱員和部門之間的管理關聯,在演員和歌曲之間的表演關聯,在數學家和定理之間的證明關聯。

弱實體(Weak Entity)以雙線長方形表示,弱實體是指不能獨立存在,必須依靠某個實體而存在的物件。例如訂單品項(order item)就必須跟著訂單(order)而存在,訂單品項(order item)無法獨立存在 (如下圖)。



多值屬性(Multivalued Attribute)以雙線橢圓形表示,如下圖每個老師可能會教授一個以上的課程,所以subjects就必須是多值屬性。


弱關聯(Weak Relationship)以雙線菱形表示,指不能獨立存在而必須依靠某個關聯而存在。

下圖是連接的表示方式:


例如: 在美國的制度中,每一個人都只能有一個社會安全號碼



例如: 下圖應該怎麼解釋呢?


例如: 下圖應該怎麼解釋呢?


例如: 下圖是完整的一個範例


但是也不是只有以上的描述方式,例如下圖,就是另外的表示法:
資料來源: http://cs-exhibitions.uni-klu.ac.at/index.php?id=431


ER-Model的例子如下: (供應商)透過<供應>這個關係,跟(產品)有關係。而 (供應商)(產品)與<供應>這三個物件各有其屬性。所以Entity與Relationship都會產生Attribute。





更多參考資料:
http://creately.com/blog/diagrams/er-diagrams-tutorial/
http://zh.wikipedia.org/wiki/ER%E6%A8%A1%E5%9E%8B
http://www2.ds.psu.edu/AcademicAffairs/Classes/IST260W/topic03/topic_0112_09.html

參考軟體:
http://portableapps.com/apps/office/dia_portable

留言

這個網誌中的熱門文章

如何使用EXCEL連接MYSQL

關聯模式的五大鍵 Super key、Candidate Key、Primary Key、Alternate Key、Foreign Key

SELECT SQL語法總整理