數(shù)據(jù)庫(kù)系統(tǒng)概論第四版chp72_第1頁(yè)
數(shù)據(jù)庫(kù)系統(tǒng)概論第四版chp72_第2頁(yè)
數(shù)據(jù)庫(kù)系統(tǒng)概論第四版chp72_第3頁(yè)
數(shù)據(jù)庫(kù)系統(tǒng)概論第四版chp72_第4頁(yè)
數(shù)據(jù)庫(kù)系統(tǒng)概論第四版chp72_第5頁(yè)
已閱讀5頁(yè),還剩71頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 中國(guó)人民大學(xué)信息學(xué)院 an introduction to database system數(shù)據(jù)庫(kù)系統(tǒng)概論數(shù)據(jù)庫(kù)系統(tǒng)概論an introduction to database system第七章第七章 數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)( (續(xù)續(xù)1)1)第七章 數(shù)據(jù)庫(kù)設(shè)計(jì)7.1 數(shù)據(jù)庫(kù)設(shè)計(jì)概述數(shù)據(jù)庫(kù)設(shè)計(jì)概述7.2 需求分析需求分析7.3 概念結(jié)構(gòu)設(shè)計(jì)概念結(jié)構(gòu)設(shè)計(jì)7.4 邏輯結(jié)構(gòu)設(shè)計(jì)邏輯結(jié)構(gòu)設(shè)計(jì)7.5 數(shù)據(jù)庫(kù)的物理設(shè)計(jì)數(shù)據(jù)庫(kù)的物理設(shè)計(jì)7.6 數(shù)據(jù)庫(kù)實(shí)施和維護(hù)數(shù)據(jù)庫(kù)實(shí)施和維護(hù)7.7 小結(jié)小結(jié)an introduction to database system7.3 概念結(jié)構(gòu)設(shè)計(jì)7.3.1 概念結(jié)構(gòu)概念結(jié)構(gòu)7.3

2、.2 概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟7.3.3 數(shù)據(jù)抽象與局部視圖設(shè)計(jì)數(shù)據(jù)抽象與局部視圖設(shè)計(jì)7.3.4 視圖的集成視圖的集成an introduction to database system7.3.1 概念結(jié)構(gòu)什么是概念結(jié)構(gòu)設(shè)計(jì)將需求分析得到的用戶需求抽象為信息結(jié)構(gòu)即概念模型的過(guò)程就是概念結(jié)構(gòu)設(shè)計(jì)概念結(jié)構(gòu)是各種數(shù)據(jù)模型的共同基礎(chǔ),它比數(shù)據(jù)模型更獨(dú)立于機(jī)器、更抽象,從而更加穩(wěn)定概念結(jié)構(gòu)設(shè)計(jì)是整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)的關(guān)鍵an introduction to database system概念結(jié)構(gòu)(續(xù))an introduction to database system現(xiàn)實(shí)世界現(xiàn)實(shí)世界機(jī)

3、器世界機(jī)器世界信息世界信息世界需求分析需求分析概念結(jié)構(gòu)設(shè)計(jì)概念結(jié)構(gòu)設(shè)計(jì)概念結(jié)構(gòu)(續(xù))概念結(jié)構(gòu)設(shè)計(jì)的特點(diǎn) (1) 能真實(shí)、充分地反映現(xiàn)實(shí)世界 (2) 易于理解 (3) 易于更改 (4) 易于向關(guān)系、網(wǎng)狀、層次等各種數(shù)據(jù)模型轉(zhuǎn)換an introduction to database system概念結(jié)構(gòu)(續(xù))描述概念模型的工具e-r模型an introduction to database system7.3 概念結(jié)構(gòu)設(shè)計(jì)7.3.1 概念結(jié)構(gòu)概念結(jié)構(gòu)7.3.2 概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟7.3.3 數(shù)據(jù)抽象與局部視圖設(shè)計(jì)數(shù)據(jù)抽象與局部視圖設(shè)計(jì)7.3.4 視圖的集成視圖的集成a

4、n introduction to database system7.3.2 概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟設(shè)計(jì)概念結(jié)構(gòu)的四類(lèi)方法自頂向下 首先定義全局概念結(jié)構(gòu)的框架,然后逐步細(xì)化an introduction to database system自頂向下策略7.3.2 概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟自底向上 首先定義各局部應(yīng)用的概念結(jié)構(gòu),然后將它們集成起來(lái),得到全局概念結(jié)構(gòu)an introduction to database system自底向上策略概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟(續(xù))逐步擴(kuò)張 首先定義最重要的核心概念結(jié)構(gòu),然后向外擴(kuò)充,以滾雪球的方式逐步生成其他概念結(jié)構(gòu),直至總體概念結(jié)構(gòu)an introd

5、uction to database system逐步擴(kuò)張策略概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟(續(xù))混合策略 將自頂向下和自底向上相結(jié)合,用自頂向下策略設(shè)計(jì)一個(gè)全局概念結(jié)構(gòu)的框架,以它為骨架集成由自底向上策略中設(shè)計(jì)的各局部概念結(jié)構(gòu)。an introduction to database system概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟(續(xù))常用策略自頂向下地進(jìn)行需求分析自底向上地設(shè)計(jì)概念結(jié)構(gòu)an introduction to database system概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟(續(xù))an introduction to database systemv自底向上設(shè)計(jì)概念結(jié)構(gòu)的步驟 第1步:抽象數(shù)據(jù)并設(shè)計(jì)局部視圖

6、第2步:集成局部視圖,得到全局概念結(jié)構(gòu)7.3 概念結(jié)構(gòu)設(shè)計(jì)7.3.1 概念結(jié)構(gòu)概念結(jié)構(gòu)7.3.2 概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟7.3.3 數(shù)據(jù)抽象與局部視圖設(shè)計(jì)數(shù)據(jù)抽象與局部視圖設(shè)計(jì)7.3.4 視圖的集成視圖的集成an introduction to database system7.3.3 數(shù)據(jù)抽象與局部視圖設(shè)計(jì)數(shù)據(jù)抽象局部視圖設(shè)計(jì)an introduction to database system數(shù)據(jù)抽象抽象是對(duì)實(shí)際的人、物、事和概念中抽取所關(guān)心的共同特性,忽略非本質(zhì)的細(xì)節(jié),并把這些特性用各種概念精確地加以描述。概念結(jié)構(gòu)是對(duì)現(xiàn)實(shí)世界的一種抽象an introductio

7、n to database system數(shù)據(jù)抽象(續(xù))三種常用抽象1. 分類(lèi)(classification)定義某一類(lèi)概念作為現(xiàn)實(shí)世界中一組對(duì)象的類(lèi)型抽象了對(duì)象值和型之間的“is member of”的語(yǔ)義an introduction to database system數(shù)據(jù)抽象(續(xù))an introduction to database system數(shù)據(jù)抽象(續(xù))2. 聚集(aggregation)定義某一類(lèi)型的組成成分抽象了對(duì)象內(nèi)部類(lèi)型和成分之間“is part of”的語(yǔ)義an introduction to database system數(shù)據(jù)抽象(續(xù))an introduction

8、to database system 聚集 數(shù)據(jù)抽象(續(xù))an introduction to database system 復(fù)雜的聚集,某一類(lèi)型的成分仍是一個(gè)聚集 更復(fù)雜的聚集 數(shù)據(jù)抽象(續(xù))3. 概括(generalization)定義類(lèi)型之間的一種子集聯(lián)系抽象了類(lèi)型之間的“is subset of”的語(yǔ)義繼承性 an introduction to database system數(shù)據(jù)抽象(續(xù))an introduction to database system概括 局部視圖設(shè)計(jì)設(shè)計(jì)分e-r圖的步驟:選擇局部應(yīng)用逐一設(shè)計(jì)分e-r圖an introduction to database s

9、ystem 選擇局部應(yīng)用在多層的數(shù)據(jù)流圖中選擇一個(gè)適當(dāng)層次的數(shù)據(jù)流圖,作為設(shè)計(jì)分e-r圖的出發(fā)點(diǎn) 通常以中層數(shù)據(jù)流圖作為設(shè)計(jì)分e-r圖的依據(jù)an introduction to database system選擇局部應(yīng)用(續(xù))an introduction to database system設(shè)計(jì)分e-r圖的出發(fā)點(diǎn) 逐一設(shè)計(jì)分e-r圖任務(wù)將各局部應(yīng)用涉及的數(shù)據(jù)分別從數(shù)據(jù)字典中抽取出來(lái)參照數(shù)據(jù)流圖,標(biāo)定各局部應(yīng)用中的實(shí)體、實(shí)體的屬性、標(biāo)識(shí)實(shí)體的碼確定實(shí)體之間的聯(lián)系及其類(lèi)型(1:1,1:n,m:n)an introduction to database system逐一設(shè)計(jì)分e-r圖(續(xù))兩條準(zhǔn)則

10、:(1)屬性不能再具有需要描述的性質(zhì)。即屬性必須是不可分的數(shù)據(jù)項(xiàng),不能再由另一些屬性組成(2)屬性不能與其他實(shí)體具有聯(lián)系。聯(lián)系只發(fā)生在實(shí)體之間an introduction to database system逐一設(shè)計(jì)分e-r圖(續(xù))an introduction to database system職稱作為一個(gè)實(shí)體逐一設(shè)計(jì)分e-r圖(續(xù))an introduction to database system病房作為一個(gè)實(shí)體逐一設(shè)計(jì)分e-r圖(續(xù))an introduction to database system倉(cāng)庫(kù)作為一個(gè)實(shí)體逐一設(shè)計(jì)分e-r圖(續(xù))實(shí)例銷(xiāo)售管理子系統(tǒng)分實(shí)例銷(xiāo)售管理子系統(tǒng)分e

11、-r圖的設(shè)計(jì)圖的設(shè)計(jì)v銷(xiāo)售管理子系統(tǒng)的主要功能:n處理顧客和銷(xiāo)售員送來(lái)的訂單n工廠是根據(jù)訂貨安排生產(chǎn)的n交出貨物同時(shí)開(kāi)出發(fā)票n收到顧客付款后,根據(jù)發(fā)票存根和信貸情況進(jìn)行應(yīng)收款處理an introduction to database system逐一設(shè)計(jì)分e-r圖(續(xù))下圖是第一層數(shù)據(jù)流圖,虛線部分劃出了系統(tǒng)邊界 an introduction to database system圖7.18 銷(xiāo)售管理子系統(tǒng)第一層數(shù)據(jù)流圖 逐一設(shè)計(jì)分e-r圖(續(xù))上圖中把系統(tǒng)功能又分為4個(gè)子系統(tǒng),下面四個(gè)圖是第二層數(shù)據(jù)流圖 an introduction to database system圖7.19 接收訂單

12、 逐一設(shè)計(jì)分e-r圖(續(xù))an introduction to database system圖7.20 處理訂單 逐一設(shè)計(jì)分e-r圖(續(xù))an introduction to database system圖7.21 開(kāi)發(fā)票 逐一設(shè)計(jì)分e-r圖(續(xù))an introduction to database system圖7.22 支付過(guò)賬 逐一設(shè)計(jì)分e-r圖(續(xù))an introduction to database system分e-r圖的框架 逐一設(shè)計(jì)分e-r圖(續(xù))參照第二層數(shù)據(jù)流圖和數(shù)據(jù)字典,遵循兩個(gè)準(zhǔn)則,進(jìn)行如下調(diào)整:(1) 訂單與訂單細(xì)節(jié)是1 n的聯(lián)系(2) 原訂單和產(chǎn)品的聯(lián)系實(shí)際

13、上是訂單細(xì)節(jié)和產(chǎn)品的聯(lián)系。(3) 圖7.21中“發(fā)票主清單”是一個(gè)數(shù)據(jù)存儲(chǔ),不必作為實(shí)體加入分e-r圖(4) 工廠對(duì)大宗訂貨給予優(yōu)惠an introduction to database system逐一設(shè)計(jì)分e-r圖(續(xù))得到分e-r圖如下圖所示 an introduction to database system銷(xiāo)售管理子系統(tǒng)的分e-r圖 逐一設(shè)計(jì)分e-r圖(續(xù))對(duì)每個(gè)實(shí)體定義的屬性如下:顧客:顧客號(hào),顧客名,地址,電話,信貸狀況,賬目余額訂單:訂單號(hào),顧客號(hào),訂貨項(xiàng)數(shù),訂貨日期,交貨日期,工種號(hào),生產(chǎn)地點(diǎn)訂單細(xì)則:訂單號(hào),細(xì)則號(hào),零件號(hào),訂貨數(shù),金額應(yīng)收賬款:顧客號(hào),訂單號(hào),發(fā)票號(hào),應(yīng)收

14、金額,支付日期,支付金額,當(dāng)前余額,貨款限額產(chǎn)品描述:產(chǎn)品號(hào),產(chǎn)品名,單價(jià),重量折扣規(guī)則:產(chǎn)品號(hào),訂貨量,折扣an introduction to database system7.3 概念結(jié)構(gòu)設(shè)計(jì)7.3.1 概念結(jié)構(gòu)概念結(jié)構(gòu)7.3.2 概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟7.3.3 數(shù)據(jù)抽象與局部視圖設(shè)計(jì)數(shù)據(jù)抽象與局部視圖設(shè)計(jì)7.3.4 視圖的集成視圖的集成an introduction to database system7.3.4 視圖的集成各個(gè)局部視圖即分e-r圖建立好后,還需要對(duì)它們進(jìn)行合并,集成為一個(gè)整體的數(shù)據(jù)概念結(jié)構(gòu)即總e-r圖。an introduction to

15、database system視圖集成的兩種方式多個(gè)分e-r圖一次集成 一次集成多個(gè)分e-r圖通常用于局部視圖比較簡(jiǎn)單時(shí)an introduction to database system視圖的集成(續(xù))逐步集成用累加的方式一次集成兩個(gè)分e-r圖 an introduction to database system視圖的集成(續(xù))集成局部e-r圖的步驟1. 合并2. 修改與重構(gòu)an introduction to database system視圖的集成(續(xù))an introduction to database system視圖集成 合并分e-r圖,生成初步e-r圖 各分e-r圖存在沖突各個(gè)

16、分e-r圖之間必定會(huì)存在許多不一致的地方合并分e-r圖的主要工作與關(guān)鍵合理消除各分e-r圖的沖突an introduction to database system合并分e-r圖,生成初步e-r圖(續(xù)) 沖突的種類(lèi)屬性沖突命名沖突結(jié)構(gòu)沖突an introduction to database system 屬性沖突兩類(lèi)屬性沖突屬性域沖突屬性值的類(lèi)型取值范圍 取值集合不同屬性取值單位沖突an introduction to database system 命名沖突兩類(lèi)命名沖突同名異義:不同意義的對(duì)象在不同的局部應(yīng)用中具有相同的名字異名同義(一義多名):同一意義的對(duì)象在不同的局部應(yīng)用中具有不同的名

17、字an introduction to database system 結(jié)構(gòu)沖突三類(lèi)結(jié)構(gòu)沖突同一對(duì)象在不同應(yīng)用中具有不同的抽象同一實(shí)體在不同分e-r圖中所包含的屬性個(gè)數(shù)和屬性排列次序不完全相同實(shí)體之間的聯(lián)系在不同局部視圖中呈現(xiàn)不同的類(lèi)型an introduction to database system消除不必要的冗余,設(shè)計(jì)基本e-r圖基本任務(wù)消除不必要的冗余,設(shè)計(jì)生成基本e-r圖an introduction to database system合并合并初步初步e-r圖圖分分e-r圖圖可能存在冗余的數(shù)據(jù)可能存在冗余的數(shù)據(jù)和冗余的實(shí)體間聯(lián)系和冗余的實(shí)體間聯(lián)系基本基本e-r圖圖消除不必要的冗余消

18、除不必要的冗余消除不必要的冗余,設(shè)計(jì)基本e-r圖(續(xù)) 冗余 消除冗余的方法an introduction to database system1冗余冗余的數(shù)據(jù)是指可由基本數(shù)據(jù)導(dǎo)出的數(shù)據(jù)冗余的聯(lián)系是指可由其他聯(lián)系導(dǎo)出的聯(lián)系 冗余數(shù)據(jù)和冗余聯(lián)系容易破壞數(shù)據(jù)庫(kù)的完整性,給數(shù)據(jù)庫(kù)維護(hù)增加困難消除不必要的冗余后的初步e-r圖稱為基本e-r圖 an introduction to database system消除冗余的方法分析方法以數(shù)據(jù)字典和數(shù)據(jù)流圖為依據(jù)根據(jù)數(shù)據(jù)字典中關(guān)于數(shù)據(jù)項(xiàng)之間的邏輯關(guān)系an introduction to database system消除冗余的方法(續(xù))an introduc

19、tion to database system消除冗余 消除冗余的方法(續(xù))效率vs冗余信息需要根據(jù)用戶的整體需求來(lái)確定若人為地保留了一些冗余數(shù)據(jù),則應(yīng)把數(shù)據(jù)字典中數(shù)據(jù)關(guān)聯(lián)的說(shuō)明作為完整性約束條件q4=q5一旦q5修改后就應(yīng)當(dāng)觸發(fā)完整性檢查,對(duì)q4進(jìn)行修改an introduction to database system消除冗余的方法(續(xù))規(guī)范化理論函數(shù)依賴的概念提供了消除冗余聯(lián)系的形式化工具an introduction to database system消除冗余的方法(續(xù))方法1. 確定分e-r圖實(shí)體之間的數(shù)據(jù)依賴 ,并用實(shí)體碼之間的函數(shù)依賴表示。an introduction to

20、database system勞動(dòng)人事管理的分e-r圖 消除冗余的方法(續(xù))上圖中,部門(mén)和職工之間一對(duì)多的聯(lián)系可表示為: 職工號(hào)部門(mén)號(hào)職工和產(chǎn)品之間多對(duì)多的聯(lián)系可表示為: (職工號(hào),產(chǎn)品號(hào))工作天數(shù) 得到函數(shù)依賴集fl an introduction to database system消除冗余的方法(續(xù))2. 求fl的最小覆蓋gl ,差集為d = fl-gl。 逐一考察d中的函數(shù)依賴,確定是否是冗余的聯(lián)系,若是,就把它去掉。(1) 冗余的聯(lián)系一定在d中,而d中的聯(lián)系不一定是冗余的;(2) 當(dāng)實(shí)體之間存在多種聯(lián)系時(shí)要將實(shí)體之間的聯(lián)系在形式上加以區(qū)分。an introduction to dat

21、abase system消除冗余,設(shè)計(jì)生成基本e-r圖實(shí)例 實(shí)例 某工廠管理信息系統(tǒng)的視圖集成。 書(shū)中圖1.14(c)、圖7.24、圖7.29分別為該廠物資、銷(xiāo)售 和勞動(dòng)人事管理的分e-r圖 圖7.30為該系統(tǒng)的基本e-r圖an introduction to database system支持的數(shù)據(jù)模型,它是各種數(shù)據(jù)模型的共同基礎(chǔ),因而比數(shù)據(jù)模型更一般、更抽象、更接近現(xiàn)實(shí)世界。消除冗余,設(shè)計(jì)生成基本e-r圖實(shí)例(續(xù))an introduction to database system支持的數(shù)據(jù)模型,它是各種數(shù)據(jù)模型的共同基礎(chǔ),因而比數(shù)據(jù)模型更一般、更抽象、更接近現(xiàn)實(shí)世界。圖1.14(c) 工

22、廠物資管理e-r圖該廠物資管理分e-r圖消除冗余,設(shè)計(jì)生成基本e-r圖實(shí)例(續(xù))an introduction to database system支持的數(shù)據(jù)模型,它是各種數(shù)據(jù)模型的共同基礎(chǔ),因而比數(shù)據(jù)模型更一般、更抽象、更接近現(xiàn)實(shí)世界。圖7.24 銷(xiāo)售管理子系統(tǒng)的分e-r圖該廠銷(xiāo)售管理分e-r圖消除冗余,設(shè)計(jì)生成基本e-r圖實(shí)例(續(xù))an introduction to database system支持的數(shù)據(jù)模型,它是各種數(shù)據(jù)模型的共同基礎(chǔ),因而比數(shù)據(jù)模型更一般、更抽象、更接近現(xiàn)實(shí)世界。圖7.29 勞動(dòng)人事管理的分e-r圖該廠勞動(dòng)人事管理分e-r圖消除冗余,設(shè)計(jì)生成基本e-r圖實(shí)例(續(xù))an introduction to database system支持的數(shù)據(jù)模型,它是各種數(shù)據(jù)模型的共同基礎(chǔ),因而比數(shù)據(jù)模型更一般、更抽象、更接近現(xiàn)實(shí)世界。系統(tǒng)的基本e-r(圖7.30)某工廠管理信息系統(tǒng)的基本e-r圖 消除冗余,設(shè)計(jì)生成基本e-r圖實(shí)例(續(xù))集成過(guò)程,解決了以下問(wèn)題: 異名同義,項(xiàng)目和產(chǎn)品含義相同庫(kù)存管理中職工與倉(cāng)庫(kù)的工作關(guān)系已包含在勞動(dòng)人事管理的部門(mén)與職工之間的聯(lián)系之中,所以可以取消職工之間領(lǐng)導(dǎo)與被領(lǐng)導(dǎo)關(guān)系可由部門(mén)與職工(經(jīng)理)之間的領(lǐng)導(dǎo)關(guān)系、部門(mén)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論