一步一步設計你的資料庫之看看基礎ER模型(1)

來源:互聯網
上載者:User

引言:一步一步設計你的資料庫二發表之後,筆者收到了一些郵件,還有朋友直接電話筆者詢問為什麼不包含資料庫實體設計方面的內容。筆者在這裡解釋一下,資料庫實體設計與資料庫產品是密切相關的,本系列的專註點是較為通用的資料庫設計理念與方法,這也是國內軟體項目中容易被忽視的一塊。今天我們將學習實體關聯ER)模型構件及其語義,這是資料庫邏輯設計的基礎。內容可能有些枯燥,但卻非常重要和有用。

由於內容比較多,我們將分兩講來學習實體關聯模型構件。

今天我們先來學習基底實體關聯式模式。

 

實體關聯ER)模型的目標是捕獲現實世界的資料需求,並以簡單、易理解的方式表現出來。ER模型可用於項目組內部交流或用於與使用者討論系統資料需求。

ER模型中的基本元素

基本的ER模型包含三類元素:實體、關係、屬性

圖1 實體、關係、屬性的ER構圖

實體Entities):實體是首要的資料對象,常用於表示一個人、地方、某樣事物或某個事件。一個特定的實體被稱為實體執行個體entity instance或entity occurrence)。實體用長方形框表示,實體的名稱標識在框內。一般名稱單詞的首字母大寫。

關係Relationships):關係表示一個或多個實體之間的聯絡。關係依賴於實體,一般沒有物理概念上的存在。關係最常用來表示實體之間,一對一,一對多,多對多的對應。關係的構圖是一個菱形,關係的名稱一般為動詞。關係的端點聯絡著角色role)。一般情況下角色名稱可以省略,因為實體名和關係名已經能清楚的反應角色的概念,但有些情況下我們需標出角色名稱來避免歧義。

屬性Attributes):屬性為實體提供詳細的描述資訊。一個特定實體的某個屬性被稱為屬性值。Employee實體的屬性可能有:emp-id, emp-name, emp-address, phone-no……。屬性一般以橢圓形表示,並與描述的實體串連。屬性可被分為兩類:標識符identifiers),描述符descriptors)。Identifiers可以唯一標識實體的一個執行個體key),可以由多個屬性群組成。ER圖中通過在屬性名稱下加上底線來標識。多值屬性multivalued attributes)用兩條線與實體串連,eg:hobbies屬性一個人可能有多個hobby,如reading,movies…)。複合屬性Complex attributes)本身還有其它屬性。

辨彆強實體與弱實體:強實體內部有唯一的標識符。弱實體weak entities)的標識符來自於一個或多個其它強實體。弱實體用雙線長方形框表示,依賴於強實體而存在。


相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.