
範例:飯店訂房系統
需求說明:顧客加入網路訂房會員後可於網路填寫預約訂單,其中顧客需登錄身分證號、姓名及電話,預約時必須填寫住宿日期、天數及入住人數,飯店員工處理訂單時必須安排住房間。
- 請為此系統分析設計一個資料庫的實體關係模型(ER model)圖。
- 寫出綱要。
- 畫出外來鍵參考圖。
參考解答
實體關係模型(ER model)圖

綱要

外來鍵參考圖

練習
假設某大學選課系統需求如下所述:
- 必須紀錄學生的學號、姓名、系別、年級
- 必須知道教授的教授編號、姓名、教授等級及所屬科系、所開課程
- 學生選課時必須知道課程名稱、學分、學時、授課老師、上課時間
- 系統必須紀錄學生選修哪些課程
- 每位學生同時可以選多門課程
- 每位教授可以開多門課程
- 每門課只開一班,且只有一個開課教授
除了以上需求之外,必要的話,可自行假設其他相關狀況,但必須寫清楚。
根據上述需求,設計資料庫結構:
- 畫出所有實體及其屬性、主鍵。
- 完整的實體關聯圖(ER-model),需包含實體間之關聯型態(一對一、一對多或多對多)。
- 畫出外來鍵參考圖。
謝謝老師的分享,我覺得很實用,也寫得很清楚。