CDM和PDM的区别?(转)
CDM和PDM的區別?概念數據模型(CDM)
信息系統的概念設計工具,即實體-聯系圖(E-R圖),CDM就是以其自身方式來描述E-R圖。此時不考慮物理實現的細節,只表示數據庫的整體邏輯結構,獨立于任何軟件和數據存儲結構。物理數據模型(PDM)
PDM考慮了數據庫的物理實現,包括軟件和數據存儲結構。
PDM的對象:表(Table)、表中的列(Table column)、主碼和外碼(Primary & Foreign key)、參照(Reference)、索引(Index)、視圖(View)等。 下面通過創建一個CDM項目的過程來談一下我對CDM的認識
1. 創建一個CDM項目,設置其屬性。
2. 定義域(Domain):一般在開始之前,我們要為CDM模型定義一些域,域的作用有些像元數據,它定義了某一類數據的數據結構。通過定義一個域,你就定義了一種數據結構,你可以在項目中引用它。這樣做的好處時,一旦你改動了一個域的屬性,整個項目中所有引用處都跟著改變。例如,你定義一個名稱為my_money的域,數據類型為money,整數位數為8,小數位數為3。你在數據項(DataItem)pay和get中引用了money的域后,該數據項的數據類型自動變為money。如果某一天你增加money類型的小數位數,那么你只需要改一下my_money這個域,所有引用了my_money這個域的數據項的數據類型都將改變。
3. 建立實體:建立一個實體后,設置屬性,修改名稱,增加attributes,每一個attribute在CDM中就是一個數據項(DataItem),轉換成PDM后就像當于表中的一個字段。在屬性欄里你可以對任意一個attribute設置它的一些特性。分別是DataType,Domain,M,P,D。DataType就是數據類型,如果引用了域就不需要設置。Domain就是引用域。M,P,D分別是:是否必填,是否為主鍵,是否可顯,這三個屬性可多選,當你選擇P后,M也自動選擇,同時在Identifiers里也多出一個標識符。標識符的作用也比較大,在relationship中,是以它為對應。
4. 建立聯系(relationship):選擇relationship后進行拖拉可在兩個實體間建立一種聯系,雙擊聯系將顯示其屬性,可在其中設置兩個實體之間的關系,這些關系包括,一對一,一對多,多對一,多對多。例如,class表和student表,是一對多關系,這種一對多的實體關系轉換成PDM后,第一個實體的主鍵將做為第二個實體的外鍵存放,例如class表的主鍵class_id將作做studuent的外鍵。
5. 建立子模型:子模型相當于我們平時所說的實體關系表,ER圖中的菱形部分。子模型用在多對多關系中。如class表和teacher表,它們之間就是一個多對多關系,為實現這兩個實體之間的聯系就需要建立一個子模型,建立子模型用association link將多個實體聯系起來。PDM中子模型也是一個物理表,與它聯系的每個實體的主鍵都是子模型表的字段。同時子模型也可以增加一些其它的attribute。
6. 建立繼承關系:繼承關系與我們在編程中的繼承類似,以父實體為基準,所有子實體將擁有父實體中的所有attribute。子實體中可定義其它attribute,以區別于其它子實體。(對繼承關系的應用我有些糊涂,在ER圖中也找不到其對應的模式。關于其父表是否有存在的價值,我與同事探討了一下,沒有結果。還望各位高手不惜賜教。)
總結
以上是生活随笔為你收集整理的CDM和PDM的区别?(转)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TP-Link TL-WR740N 无线
- 下一篇: share-jquery