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