E-R圖簡介
E-R圖可以認為是關聯式模式的雛形,每個實體是一張表,實體與實體之間的關係可以合并到其中一個實體中,也可以是另外一張表,關係表和相關的實體表是通過主鍵或外鍵來聯絡的。
畫E-R圖首先要瞭解3個要素即:實體,屬性,關係。
實體
用矩形表示,矩形框內寫明實體名。
屬性
用橢圓形表示,橢圓內寫明屬性名稱,並用連線與實體串連起來。如果屬性較多,為使圖形更加簡明,有時也將實體與其相應的屬性另外單獨用列表表示。
聯絡
用菱形表示,菱形框內寫明聯絡名,並用連線分別與有關實體串連起來,同時在連線旁標上聯絡的類型。
E-R圖設計步驟
(1)一個實體轉換為一個關係模式,
實體的屬性就是關係的屬性,實體的碼就是關係的碼。
例如:將學生實體轉換為關係模式
學生(學號,姓名,性別,出生日期)
Student(SID,Sname,Sex,Birthday,Specialty
(2)將聯絡轉換為關係模式的方法
1:1聯絡
將聯絡與任意端實體所對應的關係模式合并,加入另一端實體的碼和聯絡的屬性。
例如:實體學校(學校編號,名稱)與校長(編號,姓名)之間的任職聯絡是1:1的聯絡。
1:n聯絡
將聯絡與n端實體所對應的關係模式合并,加入1端實體的碼和聯絡的屬性。
例如:讀者和讀者類型實體的聯絡是1:n的。
Reader(RID,Rname, TypeID, Lendnum )
ReaderType(TypeID, Typename,LimitNum, LimitDays)
M:N聯絡
將M:N聯絡轉換成一個關係模式。將該聯絡相連的各實體的碼和聯絡本身的屬性轉換為關係的屬性。
例如:教務管理中選課的E-R模型如圖所示,學生和課程的聯絡是多對多的。
學生實體的碼為SID,課程實體的碼為CID,聯絡本身的屬性為Grade。
注意:要將聯絡的屬性(Grade)在圖中畫出,在下圖中即“成績”屬性。
Student(SID,Sname,Sex,Birthday,Specialty)
Course(CID, Cname,Credit)
SC(SID, CID,Grade)
二、主要舉兩個例子:
1、圖書借閱管理系統
1.1資料庫要求提供下述服務:
(1)可隨時查詢書庫中現有書籍的品種、數量與存放位置。所有各類書籍均可由書號惟一標識。
(2)可隨時查詢書籍借還情況,包括借書人單位、姓名、借書證號、借書日期和還書日期。
約定:任何人可借多種書,任何一種書可為多個人所借,借書證號具有惟一性。
(3)當需要時,可通過資料庫中儲存的出版社的電報編號、電話、郵編及地址等資訊向相應出版社增購有關書籍。
約定,一個出版社可出版多種書籍,同一本書僅為一個出版社出版,出版社名具有惟一性。
1.2資料建模:
(1)滿足上述需求的E-R圖如圖:
(2)轉換為等價的關係模式結構如下:
借書人(借書證號,姓名,單位)
圖書(書號,書名,數量,位置,出版社名)
出版社(出版社名,電報編號,電話,郵編,地址)
借閱(借書證號,書號,借書日期,還書日期)
2、學生選課管理系統
2.1資料庫要求提供下述服