概念模型ER圖及概念模型轉化成關系模型_第1頁
概念模型ER圖及概念模型轉化成關系模型_第2頁
概念模型ER圖及概念模型轉化成關系模型_第3頁
概念模型ER圖及概念模型轉化成關系模型_第4頁
概念模型ER圖及概念模型轉化成關系模型_第5頁
已閱讀5頁,還剩82頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、概念模型ER圖及概念模 型轉化成關系模型 l概念模型和實體關系圖 l概念模型轉化成邏輯模型 lPowerDesigner建立概念模型CDM l概念數(shù)據(jù)模型CDM轉化成物理數(shù)據(jù)模型PDM l建立數(shù)據(jù)庫 精選ppt l把用戶需求抽象為概念模型即為概念結構設計。 l概念模型除了要求能反映客觀世界并且易于理 解外,還要求其易于向數(shù)據(jù)模型(如關系模型) 轉化。 l概念模型獨立于具體的數(shù)據(jù)庫系統(tǒng),是整個數(shù) 據(jù)庫設計的基礎。 精選ppt l概念模型的用途 u概念模型用于信息世界的建模概念模型用于信息世界的建模 u是現(xiàn)實世界到機器世界的一個中間層次是現(xiàn)實世界到機器世界的一個中間層次 u是數(shù)據(jù)庫設計的有力工具是

2、數(shù)據(jù)庫設計的有力工具 u數(shù)據(jù)庫設計人員和用戶之間進行交流的語言數(shù)據(jù)庫設計人員和用戶之間進行交流的語言 l對概念模型的基本要求 u較強的語義表達能力,能夠方便、直接地表達應用中的較強的語義表達能力,能夠方便、直接地表達應用中的 各種語義知識各種語義知識 u簡單、清晰、易于用戶理解簡單、清晰、易于用戶理解。 精選ppt (1) 實體(Entity) 客觀存在并可相互區(qū)別的事物稱為實體??陀^存在并可相互區(qū)別的事物稱為實體。 可以是具體的人、事、物或抽象的概念可以是具體的人、事、物或抽象的概念。 (2) 屬性(Attribute) 實體所具有的某一特性稱為屬性。實體所具有的某一特性稱為屬性。 一個實體

3、可以由若干個屬性來刻畫。一個實體可以由若干個屬性來刻畫。 (3) 碼(Key) 唯一標識實體的屬性集稱為碼。唯一標識實體的屬性集稱為碼。 精選ppt (4) 域(Domain) 屬性的取值范圍稱為該屬性的域屬性的取值范圍稱為該屬性的域。 (5) 實體型(Entity Type) 用實體名及其屬性名集合來抽象和刻畫用實體名及其屬性名集合來抽象和刻畫 同類實體稱為實體型同類實體稱為實體型 (6) 實體集(Entity Set) 同型實體的集合稱為實體集同型實體的集合稱為實體集 精選ppt (7) 聯(lián)系(Relationship) 現(xiàn)實世界中事物內部以及事物之間的聯(lián)系在信息世界現(xiàn)實世界中事物內部以及

4、事物之間的聯(lián)系在信息世界 中反映為實體內部的聯(lián)系和實體之間的聯(lián)系中反映為實體內部的聯(lián)系和實體之間的聯(lián)系 實體型間聯(lián)系 兩個實體型兩個實體型 一對一聯(lián)系(一對一聯(lián)系(1:11:1) 三個實體型三個實體型 一對多聯(lián)系(一對多聯(lián)系(1:n1:n) 一個實體型一個實體型 多對多聯(lián)系(多對多聯(lián)系(m:nm:n) 精選ppt 精選ppt 實體型實體型1 1 聯(lián)系名聯(lián)系名 實體型實體型2 2 1 1 1 1 1:11:1聯(lián)系聯(lián)系 實體型實體型1 1 聯(lián)系名聯(lián)系名 實體型實體型2 2 m m n n m:nm:n聯(lián)系聯(lián)系 實體型實體型1 1 聯(lián)系名聯(lián)系名 實體型實體型2 2 1 1 n n 1:n1:n聯(lián)系聯(lián)

5、系 l一對一聯(lián)系 u如果對于實體集如果對于實體集A A中的每一個實體,實體集中的每一個實體,實體集B B中至多有一個中至多有一個 實體與之聯(lián)系,反之亦然,實體與之聯(lián)系,反之亦然,則稱實體集則稱實體集A A與實體集與實體集B B具有一具有一 對一聯(lián)系對一聯(lián)系。記為。記為1:11:1。 u 實例 班級與班長之間的聯(lián)系:班級與班長之間的聯(lián)系: 一個班級只有一個正班長一個班級只有一個正班長 一個班長只在一個班中任職一個班長只在一個班中任職 精選ppt l一對多聯(lián)系 u如果對于實體集如果對于實體集A A中的每一個實體,實體集中的每一個實體,實體集B B中有中有n n個個 實體(實體(n0n0)與之聯(lián)系,

6、反之,對于實體集)與之聯(lián)系,反之,對于實體集B B中的每中的每 一個實體,實體集一個實體,實體集A A中至多只有一個實體與之聯(lián)系,中至多只有一個實體與之聯(lián)系, 則稱則稱實體集實體集A A與實體集與實體集B B有一對多聯(lián)系有一對多聯(lián)系 記為記為1:n1:n u實例 班級與學生之間的聯(lián)系:班級與學生之間的聯(lián)系: 一個班級中有若干名學生,一個班級中有若干名學生, 每個學生只在一個班級中學習每個學生只在一個班級中學習 精選ppt l多對多聯(lián)系(m:n) u如果對于實體集如果對于實體集A A中的每一個實體,實體集中的每一個實體,實體集B B中有中有n n個個 實體(實體(n0n0)與之聯(lián)系,反之,對于實

7、體集)與之聯(lián)系,反之,對于實體集B B中的每中的每 一個實體,實體集一個實體,實體集A A中也有中也有m m個實體(個實體(m0m0)與之聯(lián)系,)與之聯(lián)系, 則稱實體集則稱實體集A A與實體與實體B B具有多對多聯(lián)系。記為具有多對多聯(lián)系。記為m:nm:n u實例 課程與學生之間的聯(lián)系:課程與學生之間的聯(lián)系: 一門課程同時有若干個學生選修一門課程同時有若干個學生選修 一個學生可以同時選修多門課程一個學生可以同時選修多門課程 精選ppt l實體型 u用矩形表示,矩形框內寫明實體名。 學生學生教師教師 精選ppt 精選ppt l屬性 u用橢圓形表示,并用無向邊將其與相應的實體連 接起來 學生學生 學

8、號學號 年齡年齡 性別性別姓名姓名 精選ppt l聯(lián)系 u聯(lián)系本身:用菱形表示,菱形框內寫明聯(lián)系名,并用無用菱形表示,菱形框內寫明聯(lián)系名,并用無 向邊分別與有關實體連接起來,同時在無向邊旁標上聯(lián)系向邊分別與有關實體連接起來,同時在無向邊旁標上聯(lián)系 的類型(的類型(1:11:1、1:n1:n或或m:nm:n) u聯(lián)系的屬性:聯(lián)系本身也是一種實體型,也可以有屬性。聯(lián)系本身也是一種實體型,也可以有屬性。 如果一個聯(lián)系具有屬性,則這些屬性也要用無向邊與該聯(lián)如果一個聯(lián)系具有屬性,則這些屬性也要用無向邊與該聯(lián) 系連接起來系連接起來 實體型實體型1 1 聯(lián)系名聯(lián)系名 實體型實體型2 2 1 1 1 1 1:

9、11:1聯(lián)系聯(lián)系 實體型實體型1 1 聯(lián)系名聯(lián)系名 實體型實體型2 2 m m n n m:nm:n聯(lián)系聯(lián)系 實體型實體型1 1 聯(lián)系名聯(lián)系名 實體型實體型2 2 1 1 n n 1:n1:n聯(lián)系聯(lián)系 精選ppt 實體型實體型1 1 聯(lián)系名聯(lián)系名 m mn n 同一實體型內部的同一實體型內部的 m:nm:n聯(lián)系聯(lián)系 實體型實體型1 1 聯(lián)系名聯(lián)系名 實體型實體型2 2 1 1 m m 多個實體型間的多個實體型間的1:n1:n聯(lián)系聯(lián)系 實體型實體型3 3 n n 精選ppt 班級班級 班級班級- -班長班長 班長班長 1 1 1 1 1:11:1聯(lián)系聯(lián)系 課程課程 選修選修 學生學生 m m n

10、 n m:nm:n聯(lián)系聯(lián)系 班級班級 組成組成 學生學生 1 1 n n 1:n1:n聯(lián)系聯(lián)系 精選ppt 職工職工 領導領導 1 1n n 同一實體型內部的同一實體型內部的 1:n1:n聯(lián)系聯(lián)系 課程課程 講授講授 教師教師 1 1 m m 多個實體型間的多個實體型間的1:n1:n聯(lián)系聯(lián)系 參考書參考書 n n 精選ppt 精選ppt 課程課程 選修選修 學生學生 m m n n 成績成績 學生 課程 班級學生卡 學號姓名 選課辦卡屬于 課程號課程名學分卡號余額班號輔導員 m n 1 1 n 1 成績 精選ppt 將E-R圖轉換為關系模型實際是將實體集、 屬性以及聯(lián)系轉換為相應的關系模式。

11、1.實體集的轉換規(guī)則:概念模型中的一個 實體集轉換為關系模型中的一個關系, 實體的屬性就是關系的屬性,實體的碼就 是關系的碼,關系的結構是關系模式。 精選ppt l以下舉例基于以下的E-R圖 學生 課程 班級學生卡 學號姓名 選課辦卡屬于 課程號課程名學分卡號余額班號輔導員 m n 1 1 n 1 成績 精選ppt 精選ppt l一個1:1聯(lián)系可以轉換為一個獨立的關系, 也可以與任意一端實體集所對應的關系合并。 l如學生與學生卡關系的處理可以有三種,一 種把學生卡的卡號作為學生關系(表)的一 個屬性(字段);第二種方法是把學生編號 作為學生卡關系(表)的一個屬性(字段); 第三種方法為是單獨建

12、立一個關系(表), 屬性(字段)為學生號和學生卡卡號。 精選ppt l實體間的1:n聯(lián)系可以有兩種轉換方法:一種 方法是將聯(lián)系轉換成一個獨立的關系;另一種 方法是在n端實體集中增加新屬性,新屬性由聯(lián) 系對應的1端實體集的碼和聯(lián)系自身的屬性構成, 新增屬性后原關系的碼不變。 l如學生與班級為1:n的關系,一種方法是單獨建 立一個關系(表),屬性(字段)為學生號和 班級代碼;第二種方法為在學生的關系(表) 中增加班級編號屬性(字段)。 l在向關系模型轉換時,一個m:n聯(lián)系轉 換為一個關系,兩個多對多實體的碼組 成關系的碼或碼的一部分,多對多關系 本身可以包含屬性。 l如學生與課程的關系為m:n的關

13、系,可 以用一個獨立的關系(表)表示,其屬 性(字段)為學生編號,課程編號和成 績,前兩者是碼且是外碼。 精選ppt 學生(*學號,姓名,班號) 學生卡(*卡號,余額,學號) 班級(*班號,輔導員) 課程(*課程號,課程名,學分) 學生-課程(*學號,*課程號,成績) *表示為碼,下劃線表示為外碼 精選ppt 學生 課程 班級校園卡 學號姓名 選課持有屬于 編號名稱學分卡號余額班號班名 m n 1 1 n 1 成績 班長 1 1 精選ppt 使用Powerdesigner描述E-R圖(TeachingCDM): 精選ppt 根據(jù)CDM生成的物理模型PDM圖(TeachingPDM): 精選pp

14、t l學生和課程之間的多對多關系生成物理模型時 會有一個index inclusion的警告 l原因是外碼和主碼生成pdm時會自動建立index, 生成的學生課程關系中,學號和課程同是為 主碼和外碼,所以重復建立了以下索引:學號, 課程號,學號課程號。 精選ppt lPDM包含了選擇的DBMS的DDL語句: create table Students ( stdid char(6) not null, classid char(6) not null, name title null, constraint PK_STUDENTS primary key (stdid) ) alter tab

15、le Students add constraint FK_STUDENTS_STDBELONG_CLASSES foreign key (classid) references classes (classid) 精選ppt PD對概念數(shù)據(jù)模型定義主要的內容: l設計數(shù)據(jù)庫過程通常開始于概念級,在此級 不需要考慮實際物理實現(xiàn)的細節(jié)。 l一個概念數(shù)據(jù)模型CDM代表了一個數(shù)據(jù)庫的整 體邏輯結構,它獨立于任何軟件或數(shù)據(jù)存儲 結構。 精選ppt l目標:使用PowerDesigner建立概念數(shù)據(jù)模型 l新建:選菜單New,然后選Conceptual Data Model(概 念模型),在Browse

16、窗口的根WorkSpace下產(chǎn)生一個概 念模型的結點,使用彈出菜單更名為“TeachingCDM”。 在該結點下已自動加入一個Diagram。 l在概念模型中加入實體等元素:右擊概念模型 TeachingCDM ,選擇New/Entity或其他菜單。 l設置元素的特性:右擊元素,選擇菜單Properties將出 現(xiàn)特性設置的對話框,不同類型的元素由不同的頁框組 成。 l元素的Name用于圖中顯示,所以一般取中文,而Code用 于生成物理模型的對象名(如表名、列名等),一般取 英文字母。 精選ppt 實體特性窗口中主要包含下列頁框: lGeneral:設置實體(Entity)的編碼 (Code)

17、、名稱(Name)和發(fā)生的行數(shù) (Number) lAttributes(屬性):設置實體的屬性 lIdentifiers:設置實體的標識(對應物理模 型中碼和唯一性約束) 精選ppt l實體屬性:在實體的特性窗口的Attributes頁框中設置 實體的屬性 l屬性設置內容:包括Code、Name、Comment、Data type、 Length、Domain和Standard Checks(Maximum、Minimum 和Default)等 l數(shù)據(jù)項Data Item:在Entity中加入的所有屬性將被自動 加入在Data Items結點下作為數(shù)據(jù)項進行集中管理。也 可以直接在Data

18、Items下增加數(shù)據(jù)項,實體屬性通過使 用相同的Code引用該數(shù)據(jù)項定義。 l屬性和數(shù)據(jù)項關系:實體的屬性可以看作是Data Items 下數(shù)據(jù)項的組合;Data Items是所有實體屬性的集合 精選ppt l相同數(shù)據(jù)項目定義一次,節(jié)省了工作量 l保證不同實體相同屬性的定義一致性 l保證相同性質的列名一致性 u后兩條通常先定義數(shù)據(jù)項,然后在實體中引用該 數(shù)據(jù)項 u前兩條通過域也能實現(xiàn) u相同含義不同定義的屬性code名不要同名(如進 價和售價等) 精選ppt l屬性的Code值: u缺省情況下為Data Items的唯一性標識,不同實體相 同Code屬性被認為對應的是一個數(shù)據(jù)項定義。 u是以后

19、生成建表SQL語句的列名。 l屬性的M、P和D: uM=Mandatory(強制):選中表示屬性非空, P=Primary Identifier:選中為主標識。 uD=Displayed:選中在圖中顯示該屬性,否則 不顯示。 精選ppt l設置:雙擊某一屬性,進入屬性特性設置框, 其中standard Checks頁框中包含了下列常用 設置:最大、最小、缺省值、格式以及所有合 法值 l生成的物理模型中建表SQL語句示例: age int null default 18 constraint CKC_AGE_ENTITY_1 check (age is null or (age between

20、16 and 20 and age in (17,18,19,20,16) ), 精選ppt l在概念模型中新建一個Business Rules,在 Expresion/Server中輸入“進貨價格=銷售價 格”(Client中只在文檔中反應,而不會對物 理模型產(chǎn)生影響) l在實體的Properties中的Rules頁框點擊Add Objects,選擇上面建立的rule。 l在生成的物理模型的建表的SQL語句中出現(xiàn): constraint CKT_ENTITY_1 check (agelength) 精選ppt l若一個數(shù)據(jù)項作為一個實體的主碼,就不能再 作為其他實體的屬性?;诘睦碛墒?Po

21、werdesigner假設與某一實體主碼同名的屬 性必是外碼,而外碼是在生成物理模型時根據(jù) 實體間關系自動生成,在概念模型中無需設 置 。 精選ppt l被選作主碼屬性的code不能被其他實體使用 u所有實體主碼屬性的Code取值必須不同名。如實體 一般均有編號,并且通常為主碼,為此我們必須在 編號前加上前綴,如StdId。 u任一實體主碼屬性的Code值不能再被其他實體的屬 性使用 lCode數(shù)據(jù)項定義,同時Code列名,所以生 成的物理模型中相同的列名必須具有相同的定 義。 u在商場管理信息系統(tǒng)中,很多單據(jù)都有數(shù)量屬性, 若這些數(shù)量屬性具有相同的長度和精度要求,則 Code可相同,反之,則

22、Code不能同名,如必須取名 為OrderQty、SaleQty等。 精選ppt l如在上述Code不能同名情況下,要求生成的物理模 型列名一定要同名,可在生成的物理模型時打開選 項:Convert Names into Codes,即把Name作為列 名。但一般不建議這樣做。 l選擇菜單Tools/Model Options,對Model設置中的 Data Item中關閉Unique Code選項。(注意:進入 Model Options對話框內容根據(jù)當前Diagram是概念 模型還是物理模型而不同) 精選ppt l在概念模型中,不要試圖使用屬性來反映兩個實體的關系, 這本身就包含了實現(xiàn)方法

23、,而實現(xiàn)方法應該由物理模型完成。 l輔導員不應該作為班級的屬性,而應該通過班級和輔導員的 關系來反映。 l學號不應該作為校園卡的屬性,而應該通過學生和校園卡的 關系來反映校園卡和學號的對應關系。 l課程和學生的關系Association即“選課”中不應該包括教 師屬性,而應該通過課程、學生和教師三者之間的 Association來反映學生所選課和教師關系。 精選ppt l定義:實體的屬性或屬性組合,在非空情況下 其值唯一地標識一個實體(可以為空) lPrimary Identifier:一個實體可有多個 Identifier,但只能指定一個為Primary Identifier,一定非空。 l

24、設置方法:在實體Propertise窗口的 Identifier中設置,雙擊某個Identifier設置 其對應屬性。 l生成物理模型:Primary Identifier對應屬性 即為主碼,其他Identifier對應屬性被定義為 Unique約束。 精選ppt l在實體的Properties窗口的Attributes中指定一個 實體的某些屬性為Primary Identifier后,該實體 將自動產(chǎn)生一個Identifier_1,其對應屬性即為所 有指定為Primary Identifier的屬性。 l去除屬性的Primary Identifier標志,并不會自動 刪除Identifier

25、_1,但對應屬性被自動刪除;反之, 刪除Identifier_1或去除對應屬性或去除Primary Identifier標志,則實體所有屬性自動去除Primary Identifier標志。 精選ppt l定義域,即屬性的取值類型和范圍。 l所有實體屬性的Domain可取已定義的域,其Data type將被該域取值類型和范圍所取代。 l例:定義一個名稱域title,則學生姓名和課程名稱 的Domain取title。 l域定義保證了具有相同取值類型和范圍的屬性域的 一致性,一旦域需要修改,不必再逐個對實體屬性 進行修改,而只要對定義的域作一次修改。 精選ppt l以圖形化的方式顯示概念模型,一個

26、概念模型 下至少有一個Diagram,自動顯示概念模型下 的實體等元素。 l打開Palette窗口:右擊工具欄,在彈出式菜 單中打開Palette選項。 l在Palette窗口中包含了圖形化方式顯示的概 念模型中的元素,可選中需要的元素加入 Diagram中。 精選ppt lPowerdesigner提供了兩種方法建立實體之間關 系。 lRelationships:為ER模型表示法 lAssociations:為Merise表示法, Merise為信 息系統(tǒng)設計和開發(fā)方法,類似UML 。 l在一個概念數(shù)據(jù)模型中,可以只使用 relationship或只使用Association,也可以兩 者同

27、時使用。 精選ppt l建立實體之間的關系,在其Properties 的Detail中設置關系的不同類型。 l在生成物理模型(Table)時,將根據(jù)兩 個實體的不同的關系,作不同處理: uone-one:雙方或單方產(chǎn)生外碼。 uone-many或many-one:many方產(chǎn)生外碼。 umany-many:產(chǎn)生新表,屬性由兩者的主碼 屬性構成。Relationship不能包含屬性。 精選ppt l主導作用(Dominant role):在One to One情 況下可選: uNone:雙方產(chǎn)生外碼 u實體A to 實體B:僅在實體B產(chǎn)生外碼 l實體A to 實體B: u基數(shù)(Cardinali

28、ty):n,m表示一個實體A可對應n-m 個實體B,可選0,1、1,1、0,n和1,n u依賴關系(Dependent): u含義:A的每個實例被B的一個實例所標識 u對物理模型影響:B的主碼將成為A的主碼一部分同時為B 的外碼 l強制關系( Mandatary ): u含義: A的每個實例需要一個B的實例 u對物理模型影響: A中的對B的外碼非空 精選ppt 基數(shù)(n,m)和依賴、強制關系存在 下列約束關系: 1)0,1:不強制、不依賴 2)0,n:不強制、無依賴 3)1,1:強制、依賴可選 4)1,n:強制、無依賴 精選ppt l1-1例:學生 to 校園卡,假設學生可不辦校 園卡,則學生

29、和校園卡非強制關系,否則為強 制關系。 l多-1例:學生 to 興趣班,假設一個學生最多 參加一個興趣班,則為非強制關系;假設一個 學生必須參加一個興趣班,則為強制關系 精選ppt l學生和班級的多-1關系: u如整個學校學生的學號唯一,則學生對班級為非 依賴關系。產(chǎn)生物理模型結果是班號作為學生的 外碼。 u如學生的學號僅在班級中唯一,則學生對班級為 依賴關系。產(chǎn)生物理模型結果是班號將作為學生 主碼一部分(和學號一起為主碼)同時班號為學 生的外碼。 精選ppt l11、1多和多多關系均可以轉換為實體, 特別是對多多關系,轉換為實體后可以包含 屬性。 l把Relationship轉換為實體的方法

30、是使用關系 的彈出菜單中的Change to Entity。 精選ppt l在TeachingCDM中,students和classes的 Relationship加上依賴關系,然后生成物理模型, 觀察區(qū)別。 l在實際應用中,學號往往包含了學生的級別、專業(yè)、 班號等信息,這實際不符合1NF,如何設計更規(guī)范? 同時又能按需求規(guī)則輸出包含級別、專業(yè)、班號等 信息的學號? l提示:參考上述1-多關系中的依賴關系進行設計。 精選ppt l實體學生的班長的關系,由于班長本身是學生, 所以是一個實體自己和自己的關系,建立這種 關系后將在物理模型中產(chǎn)生什么情況?如此處 理是否是唯一方法?是否可以通過學生和班

31、級 的關系來反映學生和班長的關系,比較兩種方 法。 精選ppt l作用:Association通過Assocation Link與多 個實體連接,并可包括自己的屬性。一般用于 二個和二個以上實體的聯(lián)系。 l使用方法:可以直接用Association Link連接 兩個實體,將產(chǎn)生一個Association,兩個 Assocation和實體的連接Association Link。 也可以先建立一個Association,然后用 Association Link連接Assocation和某個實體。 l生成物理模型:將同Relationship一樣根據(jù)是 1-1、1-多還是多-多關系生成外碼或生成一

32、個 Table。 精選ppt l通過Association連接的兩個實體的關系類型, 是分別通過兩實體和Association的 Association Link類型來確定的。 l下面是班級和學生的1多關系,其中的1,1 和1,n并非表示班級和學生的多1關系(事 實是1多關系),而表示的是學生在學生和 班級關系中發(fā)生11次,而班級在學生和班級 的關系中將發(fā)生1n次。 精選ppt 精選ppt l對11、1多和不包含屬性的多多關 系,使用Relationship。 l實體之間的多多關系且包含屬性的使用 Association比較簡單。 l要處理復雜的問題,如建立關系之間的關 系或關系與實體之間的關

33、系,必須使用 Relationship。 精選ppt l學生和課程的關系即“選課”可使用Association, 也可以使用一個實體,該實體具有成績屬性,然后 分別和學生和課程建立強制的依賴多-1關系,分別 用這兩種方法設計CDM,然后生成PDM。比較分析兩 種方法的優(yōu)缺點。 l上述實體及其關系可以在兩個實體建立的 Relationship后,右擊Relationship使用彈出菜單 中的Change to Entity/Standard生成。 精選ppt l繼承關系的一端連接具有普遍性的Entity,稱為 Parent Entity,繼承關系的另一端連接具有特殊性的 一個或多個Entity稱

34、為Child Entity。 l例如,“學生”為“本科生”與“研究生”的Parent, 后者為前者的Child。 l繼承關系生成物理模型的控制: u如關系屬性中打開Generate Children選項,可選Parent的所 有屬性或僅主屬性復制到Children對應表中。 u如關閉Generate Children選項,則僅生成Parent表,該表將 包含子實體所有屬性并可設置Specifying Attribute。 u如生成父子表同時打開,父表主碼將作為子表主碼和外碼。 lSpecifying Attribute:設置屬性,這些屬性將出現(xiàn)在 生成的父表中,通常用作區(qū)分是哪個Childre

35、n。 精選ppt l同一事件(occurrence)不能出現(xiàn)在同一Parent 的兩個child中,這種繼承稱為互斥性繼承, 反之,則稱為非互斥性繼承。 l如父實體一個學生只能是本科生或研究生取其 一,則本科生和研究生為學生的互斥性繼承, 否則,如一個學生可同時為本科生和研究生, 則為非互斥性繼承。 l此設置只影響文檔而不影響生成的PDM。 精選ppt l對若干實體的公共屬性,可把這些公共屬性抽取出 來形成一個父實體,具有公共屬性的實體可從該父 實體繼承這些公共屬性。 l如所有單據(jù)都有單據(jù)號,日期,制單人等,則這些 屬性可形成一個“單據(jù)公共屬性”實體,所有單據(jù) 實體繼承該實體屬性。 l概念模型

36、下,出現(xiàn)在主鍵(如單據(jù)號)中的數(shù)據(jù)項不 能重復使用,若在物理模型下,所有單據(jù)號要使用 相同的列名,可以使用Inheritance。 精選ppt l實際繼承的前提條件是Child具有較多的共同屬性。使用繼承 可避免共同屬性重復維護并保持其一致性。 l僅生成Child:適用Child之間共同屬性相對少而差異大的情 況。在Child之間非互斥情況下,會有冗余。 l僅生成Parent:適用Child之間差異小的情況,五斥情況下, 某個Child的屬性對其他Child一定為空。 l生成Parent及部分Child:適用Child之間共性屬性相對多而 差異也大情況,此情形Child僅需要繼承Parent的

37、主屬性?;?斥和非互斥情況均適用,互斥情況下Parent與Child為1-1, 在非互斥情況下為1對多。 精選ppt l業(yè)務單據(jù): u共同屬性:單據(jù)號、日期、備注、制單人、審核 人等諸多共同屬性。 u特殊屬性: 進貨單:供應商、結算方式 出庫單:倉庫、出庫類型 精選ppt l繼承最后生成的物理模型可有下列選擇,分析 其利弊: u生成Parent, u不生成Parent u僅繼承主碼屬性 u繼承所有屬性 精選ppt 錯誤的設計:單據(jù)實體的屬性一部分和單據(jù)為1-1,另一 部分為1-多,所以把它分成兩個實體,分別為單據(jù)摘要 和單據(jù)明細。 精選ppt l必須在生成的物理數(shù)據(jù)模型中為單據(jù)明細設置 主碼:

38、 精選ppt l單據(jù)明細實際上反映的是單據(jù)實體和商 品實體的多對多關系: 精選ppt l生成的物理數(shù)據(jù)模型不必作任何修改 精選ppt 單據(jù)主表中有制單人、申請人和驗收人 等,這些屬性同是“員工表”的外鍵。 產(chǎn)生問題是:在概念模型中, “員工” 實體和“單據(jù)”實體將有多個1-M relationship,生成物理模型后,“單 據(jù)”表中將產(chǎn)生多個“員工號”外鍵, 其列名由PowerDesigner根據(jù)概念模型對 應屬性的code自動合成,無法人工控制。 精選ppt l生成物理數(shù)據(jù)模型中單據(jù)的處理人的列名無法控 制,只能作修改。實際上單據(jù)中處理人的列是重 復的,不符合1NF。 精選ppt l增加單據(jù)

39、責任實體。 精選ppt 精選ppt l問題:一個超市中某種商品的供應商一般一個時期固 定為一個,所以供應商和商品的關系為1-多,但可能 會有個別商品同時有多個供應商,即對個別商品供應 商和商品的關系為多-多。 l通常的解決方案:設計成多對多模型,包含3個關系: u商品(*商品編號,名稱,單位,) u供應商(*供應商編號,名稱,地址,聯(lián)系電話) u商品和供應商對應表(*商品編號,*供應商編號) l設計缺陷:因為極個別的商品,查詢任何和商品及供 應商相關的信息,都必須連接三個表。連接的表越多, 查詢效率自然越差。 精選ppt l設計成1-多模型,適用大多數(shù)商品: u商品(*商品編號,名稱,單位,供

40、應商編號) u供應商(*供應商編號,名稱,地址,聯(lián)系電話) l對個別商品,可能有多個供應商,其供應商編 號可取一個特殊的編號表示它有多個供應商, 而其對應的供應商使用下列關系來表示: u商品和供應商對應表(*商品編號,*供應商編號) l優(yōu)點:對大多數(shù)商品的商品信息和供應商信息 查詢,只需要連接兩個表。 精選ppt l可在商品實體和供應商實體之間建立兩個關系, 一個為多對一,一個為多對多。 l表示對多數(shù)商品實體和供應商實體為多對一, 對個別商品商品實體和供應商實體為多對多。 精選ppt l對兩種設計,分別寫出并比較查詢供應商供貨表的 select語句,列包括:供應商編號,供應商名稱, 商品編號,

41、商品名稱,按第一列排序。 u僅查單供應商的商品 u僅查多(多于一個)供應商的商品 u查所有商品 l針對二種設計方案,從對商品和供應商的增、刪和 改三個方面,分別給出處理邏輯,比較其復雜性, 并設計一種商品和供應商關系的維護界面。 精選ppt 一)生成物理數(shù)據(jù)模型 l打開生成對話框:使用菜單Tools/Generate Physical Data Model生成物理數(shù)據(jù)模型。出現(xiàn)對話框PDM Generation Options對生成進行控制。 l第一次生成:選中“Generate New Physical Data Model”,并選擇DBMS(Microsoft SQL Server 200

42、0), 按確認則生成PDM。 l重新生成:修改了CDM后,要重新生成PDM,選中 “Update Existing Physical Data Model”,并關閉 “Preserve Modifications”選項,按確認則重新生成 PDM覆蓋原PDM。 精選ppt l問題:有時需要對生成的PDM進行修改,修改后若重 新生成PDM,對PDM的修改將丟失。 l解決方法:打開“Update Existing Physical Data Model”中Preserve Modifications選項,PD將根據(jù) CDM生成PDM,并與原來的(生成后可能修改過的) PDM比較,由用戶選擇是那些內容要根據(jù)新的PDM進 行更新、刪除或增加。 l建議:盡可能建立合理完整的CDM,避免或盡可能少 地對生成的PDM作修改。 精選ppt l選擇Update Existing Physical Data Model并打開 Preserve Modifications,按確認后出現(xiàn)下列對話框, 左邊是新生成的PDM,右邊是原生成并已增加“出生日 期”的PDM,其中所有比較后的不一致項用戶可打勾表 示用新 PDM更新,更新

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論