2012-03-28 500 views
17

ERD(實體關係圖)與EERD(增強型實體關係圖)之間的區別是什麼?ER圖與EER圖之間的區別

+5

Shaki,請接受解決您的問題的答案。這是通過點擊答案分數下的複選標記完成的。 – Shahbaz 2012-03-28 15:59:43

回答

25

實體關係模型

你有關係(image source

example for an relationship

和屬性(image source

example for an attribute

也可以是主鍵(image source

example for an primary key

增強實體關係模型

你有一樣與ER模型加

專業化

enter image description here

分區(這是多特)

概括

聚集

鍵註釋不同:

enter image description here

4

我想補充一點,ER模型是基本模型,擁有所有你需要的關係代數,因爲它是(包括ISA層次 - 其他我不記得的東西)。而且更抽象(因此每個盒子不一定要是數據庫表格,反過來一些盒子可以多於一個表格)

EER模型更接近真實數據庫的樣子。所以每個盒子實際上都是桌子。我認爲公認的答案也是正確的,但在我看來(沒有讀過這個地方,我只是認爲它是這樣)EER的創建是爲了幫助人們設計數據庫,甚至超過基本的關係代數。 ER的關係代數給你提供了建模數據庫所需的所有東西,但是你需要一些編譯器來將ISA層次結構和關係轉化爲實際的表格,並用EER獲得你所看到的東西。我使用兩者來設計表格 - ER更合乎邏輯,因爲它將您從類似繼承的東西中抽象出來,因爲您只需告訴您的ER工具,我希望它可以從中繼承,而且您不必創建2個表格。但是EER更好,因爲你看到了你所得到的。結論:ER是基本原理,EER對實際工作而言是一種更好的工具,抽象程度較低。

(我的關係代數teoretical knowladge太生疏了,所以我希望我能記得的一切權利,糾正我,如果我錯了)

2

通過增強ER模型添加的主要特點是專業化/推廣和工會。這些Gen-spec中最常出現的是Stackoverflow問題的答案。

Gen-spec是ER建模中對象建模中的類 - 子類的對應物。舉一個例子來說明:汽車可以是汽車或卡車。貨物空間等功能屬於卡車,而不屬於汽車。所以有一些適用於廣義實體的功能,但這些功能也僅適用於其中一種專業化功能。

很多時候,人們在這裏遇到一個關於gen-spec案例的表格設計問題。但他們並不認同這一點,因爲他們在開始關於數據庫的教育時從未被引入到gen-spec中。

另一種說法是,他們被教導如何建模和實現「有」關係,但沒有如何建模和實現「是」的關係。