資料庫:實體關係
外觀
資料庫可能儲存有關各種事物的相關資料。例如,如果我們檢視線上商店所需的表格
- 員工
- 產品
- 收據
- 客戶
這些表格可以獨立存在,但當我們開始描述它們中的每一個時,我們會注意到它們彼此相關。例如
- 收據表記錄了客戶購買了哪些產品,以及購買日期。
這描述了收據記錄,並且從它的結構中我們可以看到其他表格中的主鍵包含在其中。
Receipt(CustomerID, ProductID, DateTime, Total, StaffID)
換句話說,我們可以說
A receipt has one customer A customer can have many receipts A receipt has one product A product can be part of many receipts A receipt was created by one staff member A staff member can create many receipts
然後我們可以像這樣繪製此圖

為了將表格連線起來並允許我們查詢資料庫,我們使用關係。您需要了解三種類型的關係。每種關係都使用“腳爪符號”顯示在下面,這是許多方法之一來描述這些關係
| 圖表 | 名稱 | 描述 |
|---|---|---|
| 多對多 | 一個作者可以寫多本書,一本書可以由多個作者編寫 | |
| 一對多 | 一位生物母親可以有多個孩子,一個孩子只能有一個生物母親 | |
| 一對一 | 一個國家只有一個首都,一個首都只在一個國家 |
|
練習:關係 回答 一隻動物有一個基因組 回答 一個學生有多門課 回答 一個聯賽有多支球隊 回答
繪製以下關係 回答 vehicle ---< wheel 父親和孩子之間的關係 回答 Father >--< Child (除非我們談論的是生物父親:Father--<Child ) 政治家和鼻子之間的關係 回答 politician ---- nose 主人和貓之間的關係 回答 Cat >---< Owner (即使一個主人可能擁有不止一隻貓,一隻貓可能有多個主人) 汽車和司機之間的關係 回答 car --- driver (一輛車只能由一名司機駕駛,一名司機一次只能駕駛一輛車) 獨輪車和輪子之間的關係 回答 wheel --- unicycle 房屋和郵政編碼之間的關係 回答 House >--- Postcode (一棟房屋分配一個郵政編碼,但同一個郵政編碼可能分配給許多房屋) |


