使用crow E-R图描述数据库关系
在設(shè)計數(shù)據(jù)庫模型時,使用E-R圖的方式可以幫我們理清各數(shù)據(jù)庫實體信息及實體與實體之間的關(guān)系。
本文描述的為:E-R Crow畫法
繪圖工具: draw.io 離線版
文章目錄
- 1 E-R圖
-
- 2 E-R圖說明
-
- 2.1 屬性
- 2.2 關(guān)系
- 2.3 實體
- 3 圖例及參考
-
- 3.1 crow方法圖列
- 3.2 示例
- 4 參考
1 E-R圖
實體關(guān)系圖(ERD)或ER模型代表任何系統(tǒng)中的數(shù)據(jù)。您可以使用它們來說明業(yè)務(wù)流程中數(shù)據(jù)的結(jié)構(gòu),或詳細(xì)說明關(guān)系數(shù)據(jù)庫中數(shù)據(jù)的存儲方式。ER圖不一定顯示數(shù)據(jù)的處理方式或經(jīng)過的確切過程,而是數(shù)據(jù)實體的結(jié)構(gòu)和相互關(guān)系。
**
ER圖有幾種表示法,但最常見的是Chen和Crow的腳部表示法。
有兩種主要樣式-一種看起來更像流程圖,另一種更像UML類圖。可能更容易看到第二種樣式表示的實際數(shù)據(jù)庫。
2 E-R圖說明
2.1 屬性
組成實體的數(shù)據(jù)的各個位(字段)。在第一種圖表樣式中,它們繪制為圍繞其實體浮動的圓圈。在第二種樣式中,類似于UML類圖,它們在矩形內(nèi)列出。
如果使用屬性標(biāo)識實體,則該屬性為主鍵并帶有下劃線。如果它引用另一個實體的標(biāo)識屬性,則它是一個外鍵并以_斜體表示_。如果您實際上不是在存儲屬性,而是從其他屬性進(jìn)行計算,則它是派生的屬性,并且具有虛線輪廓。
chen:
)
crow:
2.2 關(guān)系
這些顯示了實體之間的相互關(guān)系–它們可以用菱形表示,也可以用文本形式寫在兩個實體之間的連接器上。
第一種chen畫法 用菱形表示實體直接的關(guān)系。
而在crow畫法中,后者僅表示數(shù)據(jù)關(guān)聯(lián),沒有任何互動。
關(guān)系連接器使用Crow的腳注來顯示每個實體與另一個實體有多少關(guān)聯(lián)。例如,在“習(xí)慣跟蹤器”應(yīng)用程序中-一名教練可以有0到許多用戶,而一個用戶只能有0或1個教練。用戶可能有很多習(xí)慣,每個習(xí)慣可能屬于許多用戶。
關(guān)系端如下:
一名教練可以有0到許多用戶,而一個用戶只能有0或1個教練
則一個教練對應(yīng)0個或多個用戶,則一端應(yīng)為下列圖列
一個用戶只能有0或1個教練,則為下列圖列
則一個教練對應(yīng)0個或多個用戶,則一端應(yīng)為下列圖列 組合到一起則為
2.3 實體
這些表示一個數(shù)據(jù)集合,使用一個具有“垂懸”屬性的矩形或一個包含其屬性列表的框。
例如,實體Student可以包括屬性StudentID,名稱,地址,課程,主題,標(biāo)記。
此示例之后的第二個實體是“課程”,其中包括屬性“教授”,“已注冊學(xué)生”列表以及該課程包含的主題。等等。
- 一個弱實體(顯示為雙矩形 chen畫法),因為它不具有它自己獨特的鑰匙-它只存在于有關(guān)其所屬實體。
- 一個關(guān)聯(lián)實體(更容易在第二類型的圖表看),顯示有虛線輪廓和連接器-需要這種類型的實體,無論你有很多一對多的關(guān)系。要以第一種樣式圖創(chuàng)建關(guān)聯(lián)實體,請?zhí)砑訉嶓w形狀和關(guān)系形狀,并將這兩個形狀組合在一起。**
3 圖例及參考
3.1 crow方法圖列
3.2 示例
4 參考
https://drawio-app.com/entity-relationship-diagrams-with-draw-io/
https://www.er-diagram.com/database-er-diagram-examples/
總結(jié)
以上是生活随笔為你收集整理的使用crow E-R图描述数据库关系的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深圳手付通java面试题
- 下一篇: 飞雪桌面日历注册码