PowerDesigner 教程系列(六)概念數據模型

目標:本文主要介紹聯繫的定義及使用。

 一、 聯繫
聯繫(Relationship)是指實體集這間或實體集內部實例之間的連接。

 實體之間可以通過聯繫來相互關聯。與實體和實體集對應,聯繫也可以分爲聯繫和聯繫集,聯繫集是實體集之間的聯繫,聯繫是實體之間的聯繫,聯繫是具有方向性的。聯繫和聯繫集在含義明確的情況之下均可稱爲聯繫。

 按照實體類型中實例之間的數量對應關係,通常可將聯繫分爲4類,即一對一(ONE TO ONE)聯繫、一對多(ONE TO MANY)聯繫、多對一(MANY TO ONE)聯繫和多對多聯繫(MANY TO MANY)。

 二、 建立聯繫
在CDM工具選項板中除了公共的工具外,還包括如下圖所示的其它對象產生工具。

 在圖形窗口中創建兩個實體後,單擊“實體間建立聯繫”工具,單擊一個實體,在按下鼠標左鍵的同時把光標拖至別一個實體上並釋放鼠標左鍵,這樣就在兩個實體間創建了聯繫,右鍵單擊圖形窗口,釋放Relationship工具。如下圖所示


三、 四種基本的聯繫
即一對一(ONE TO ONE)聯繫、一對多(ONE TO MANY)聯繫、多對一(MANY TO ONE)聯繫和多對多聯繫(MANY TO MANY)。如圖所示

四、 其他幾類特殊聯繫

除了4種基本的聯繫之外,實體集與實體集之間還存在標定聯繫(Identify Relationship)、非標定聯繫(Non-Identify RelationShip)和遞歸聯繫(Recursive Relationship)。

標定聯繫:
每個實體類型都有自己的標識符,如果兩個實體集之間發生聯繫,其中一個實體類型的標識符進入另一個實體類型並與該實體類型中的標識符共同組成其標識符時,這種聯繫則稱爲標定聯繫,也叫依賴聯繫。反之稱爲非標定聯繫,也叫非依賴聯繫。
 注意:
在非標定聯繫中,一個實體集中的部分實例依賴於另一個實例集中的實例,在這種依賴聯繫中,每個實體必須至少有一個標識符。而在標定聯繫中,一個實體集中的全部實例完全依賴於另個實體集中的實例,在這種依賴聯繫中一個實體必須至少有一個標識符,而另一個實體卻可以沒有自己的標識符。沒有標識符的實體用它所依賴的實體的標識符作爲自己的標識符。


換句話來理解,在標定聯繫中,一個實體(選課)依賴 一個實體(學生),那麼(學生)實體必須至少有一個標識符,而(選課)實體可以沒有自己的標識符,沒有標標識符的實體可以用實體(學生)的標識符作爲自己的標識符。


 遞歸聯繫:
遞歸聯繫是實體集內部實例之間的一種聯繫,通常形象地稱爲自反聯繫。同一實體類型中不同實體集之間的聯繫也稱爲遞歸聯繫。

例如:在“職工”實體集中存在很多的職工,這些職工之間必須存在一種領導與被領導的關係。又如“學生”實體信中的實體包含“班長”子實體集與“普通學生”子實體集,這兩個子實體集之間的聯繫就是一種遞歸聯繫。創建遞歸聯繫時,只需要單擊“實體間建立聯繫”工具從實體的一部分拖至該實體的別一個部分即可。如圖


五、 定義聯繫的特性

在兩個實體間建立了聯繫後,雙擊聯繫線,打開聯繫特性窗口,如圖所示。


 六、 定義聯繫的角色名
在聯繫的兩個方向上各自包含有一個分組框,其中的參數只對這個方向起作用,Role Name爲角色名,描述該方向聯繫的作用,一般用一個動詞或動賓組表。
如:“學生 to 課目 ” 組框中應該填寫“擁有”,而在“課目To 學生”組框中填寫“屬於”。(在此只是舉例說明,可能有些用詞不太合理)。

七、 定義聯繫的強制性
Mandatory 表洋這個方向聯繫的強制關係。選中這個複選框,則在聯繫線上產生一個聯繫線垂直的豎線。不選擇這個複選框則表示聯繫這個方向上是可選的,在聯繫線上產生一個小圓圈。

八、 有關聯繫的基數
聯繫具有方向性,每個方向上都有一個基數。

舉例,
“系”與“學生”兩個實體之間的聯繫是一對多聯繫,換句話說“學生”和“系”之間的聯繫是多對一聯繫。而且一個學生必須屬於一個系,並且只能屬於一個系,不能屬於零個系,所以從“學生”實體至“系”實體的基數爲“1,1”,從聯繫的另一方向考慮,一個系可以擁有多個學生,也可以沒有任何學生,即零個學生,所以該方向聯繫的基數就爲“0,n”,如圖所示

待續。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章