在PowerDesigner中設計概念模型

2021-09-23 21:31:29 字數 1993 閱讀 3578

在概念模型中主要有以下幾個操作和設定的物件:實體(entity)、實體屬性(attribute)、實體標識(identifiers)、關係(relationship)、繼承(inheritance)、關聯(association)、關聯連線(association link)。

實體

實體就是我們抽象出的物件,比如:乙個選課系統中,學生、教師、班級、課程等等都是實體。實體屬性就是乙個實體中所包含的簡單屬性,比如學生實體,具有學號、姓名、生日、性別等屬性。另外實體還有個標識用於唯一的標識出每個實體例項,比如學生實體中就可用將學生的學號作為該實體的標識。標識可用是乙個實體屬性也可以是多個屬性的結合。在pd中新建乙個新的概念模型,系統將出現乙個工具欄如下,用於在設計面板中設計模型。

關係

關係用於表示乙個實體與另外乙個實體之間的對應關係,分為一對一(1:1),一對多(1:n),多對一(n:1),多對多(m:n)4種對應關係,一對多和多對一其實就是方向相反,所以實際上就是一對

一、一對多和多對多。

最最常用的就是一對多,比如班級實體和學生實體就是一對多關係,乙個班級有多個學生,乙個學生只會屬於乙個班級。在設計面板中新增乙個class實體,然後單擊工具欄的relationship按鈕,然後在class實體上單擊一下,再到student上單擊一下,就可以在class和student之間建立一對多關係,如圖:

繼承

在概念模型中的繼承與在oo模型中的繼承是一回事,就是要抽象出乙個實體,其他實體繼承該實體後就擁有該實體的屬性。

同樣以選課系統為例,現在有學生實體,有教師實體,其他他們都是人,具有人的屬性,所以我們可以抽象出乙個人的實體,人具有性別、生日、名字等屬性,教師具有職稱、工號等屬性這是學生沒有的,所以不能放在人實體中,學生具有學號屬性是教師沒有的。

關聯(association)我也不知道這個翻譯成中文用哪個詞比較好,就暫且用「關聯」吧。

association也是一種實體間的連線,在merise模型方法學理論中,association是一種用於連線分別代表明確定義的物件的不同實體,這種連線僅僅通過另乙個實體不能很明確地表達,而通過「事件(event)」連線來表示。

也就是說,實體和實體之間存在著關係(多對多),但是這種關係還存在其他的屬性,這些屬性如果如果作為乙個明確的實體的實體來表示又不是很合適,所以就使用了association來表達,這種關係之間一般是乙個「事件」虛實體,也就是說是乙個動詞對應的實體。

前面說的可能還是太抽象,以實際的例子來說明:現在有了學生實體,有課程實體,乙個學生可以選擇多門課程,一門課程有多個學生來上課,所以之間就存在乙個「選課」的association,其中記錄了學生選課的時間、選課的狀態:

在PowerDesigner中設計概念模型

在概念模型中主要有以下幾個操作和設定的物件 實體 entity 實體屬性 attribute 實體標識 identifiers 關係 relationship 繼承 inheritance 關聯 association 關聯連線 association link 實體 實體就是我們抽象出的物件,比如...

在PowerDesigner中設計概念模型

在概念模型中主要有以下幾個操作和設定的物件 實體 entity 實體屬性 attribute 實體標識 identifiers 關係 relationship 繼承 inheritance 關聯 association 關聯連線 association link 實體 實體就是我們抽象出的物件,比如...

PowerDesigner中的問題

1.id使用inerger然後設為主鍵後,生成sql不能夠自動編號。解決 生成sql自增id列的方法是,把cmd圖的id列的字段型別選擇為serial,但是他生成的是number的自增列,沒有辦法生成int的自增列,如果有人知道,請告訴我,不勝感謝。2.按照書上的生成的字元型的字段是varchar,...