2013年2月12日 星期二

建立關聯(Relationship)

  • IDEF1X及IE(also call Crows Foot)
  • 建立Identifying Relationship及Non-Identifying Relationship
  • 建立Supertypes / Subtypes Relationship



在建立關聯之前,先說明如何變更關聯的圖示。點選Model→Model Properties→Notation。將Notation改成「IE」。
Model Properties

IDEF1X及IE(also call Crows Foot)
預設是左邊IDEF1X。右邊是IE(Information Engineering),又俗稱烏鴉腳(Crows Foot)。
兩種圖示都有人在用。要注意的是兩種圖示在功能上並無不同,所以只要選擇看得懂、看得習慣的就行了。
IDEF1X及IE
建立Identifying Relationship及Non-Identifying Relationship
點選Identifying Relationship tool()建立一對多的關聯。
注意,有烏鴉腳符號的那端表示「多」,另一端表示「一」。要建立一個確切的關係:一個出版商出版很多本書,首先必須先點選父實體PUBLISHER(表示一),再點選子實體BOOKS(表示多),建立好的關聯如下圖。
建立Identifying Relationship

在關聯上點滑鼠兩下開啟進一步細節設定,Verb Phrase允許我們定義父子實體之間的動詞關係,在[Parent-to-Child]輸入publish、[Child-to-Parent]輸入publish by。[Relationship Cardinality]設定為One or More。
關聯設定
另一種關聯是Non-Identifying Relationship tool()。關聯是用「虛線」表示,此時父實體(MEMBER)的主鍵會出現在子實體(MEMBER_BOOKS)的非主鍵欄位中。
建立Non-Identifying Relationship
建立Supertypes / Subtypes Relationship
Supertypes和Subtypes之間是一種「is a」的關係。為了區分會員的性別,建立MALE和FEMALE兩個Entity:首先選擇Sub-Category tool(),然後點擊MEMBER為Supertypes,再分別點擊MALE、FEMALE為Subtypes。
Supertypes / Subtypes
利用上述步驟完成所有關聯,結果如下圖所示。
完成所有關聯