第7章 數(shù)據(jù)庫設(shè)計(jì)2011-簡化版_第1頁
第7章 數(shù)據(jù)庫設(shè)計(jì)2011-簡化版_第2頁
第7章 數(shù)據(jù)庫設(shè)計(jì)2011-簡化版_第3頁
第7章 數(shù)據(jù)庫設(shè)計(jì)2011-簡化版_第4頁
第7章 數(shù)據(jù)庫設(shè)計(jì)2011-簡化版_第5頁
已閱讀5頁,還剩99頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

數(shù)據(jù)庫原理

計(jì)算機(jī)系軟件教研室2023/2/11數(shù)據(jù)庫原理第七章數(shù)據(jù)庫設(shè)計(jì)2023/2/12場景思考學(xué)生成績管理系統(tǒng)的數(shù)據(jù)庫部分如何設(shè)計(jì)?學(xué)生選課系統(tǒng)的數(shù)據(jù)庫部分如何設(shè)計(jì)?電廠的監(jiān)控系統(tǒng)的數(shù)據(jù)庫部分如何設(shè)計(jì)?中國移動網(wǎng)絡(luò)服務(wù)系統(tǒng)的數(shù)據(jù)庫部分如何設(shè)計(jì)?淘寶網(wǎng)的數(shù)據(jù)庫部分如何設(shè)計(jì)?2023/2/13重點(diǎn)思考—學(xué)生成績管理功能:錄入、查看、修改、統(tǒng)計(jì)分角色細(xì)化功能:學(xué)生:查看、統(tǒng)計(jì)(已修學(xué)分,最高分,最低分,平均學(xué)分績)教學(xué)秘書:錄入教務(wù)處:修改、統(tǒng)計(jì)(按課程統(tǒng)計(jì)、趨勢統(tǒng)計(jì))教師:查看、分析統(tǒng)計(jì)(成績分布情況)2023/2/14第七章數(shù)據(jù)庫設(shè)計(jì)7.1數(shù)據(jù)庫設(shè)計(jì)概述7.2需求分析7.3概念結(jié)構(gòu)設(shè)計(jì)7.4邏輯結(jié)構(gòu)設(shè)計(jì)7.5數(shù)據(jù)庫的物理設(shè)計(jì)7.6數(shù)據(jù)庫實(shí)施和維護(hù)7.7小結(jié)數(shù)據(jù)庫設(shè)計(jì)概述數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫設(shè)計(jì)是指對于一個(gè)給定的應(yīng)用環(huán)境,構(gòu)造(設(shè)計(jì))優(yōu)化的數(shù)據(jù)庫邏輯模式和物理結(jié)構(gòu),并據(jù)此建立數(shù)據(jù)庫及其應(yīng)用系統(tǒng),使之能夠有效地存儲和管理數(shù)據(jù),滿足各種用戶的應(yīng)用需求,包括信息管理要求和數(shù)據(jù)操作要求。目標(biāo):為用戶和各種應(yīng)用系統(tǒng)提供一個(gè)信息基礎(chǔ)設(shè)施和高效率的運(yùn)行環(huán)境7.1數(shù)據(jù)庫設(shè)計(jì)概述7.1.1數(shù)據(jù)庫設(shè)計(jì)的特點(diǎn)7.1.2

數(shù)據(jù)庫設(shè)計(jì)方法7.1.3數(shù)據(jù)庫設(shè)計(jì)的基本步驟7.1.4數(shù)據(jù)庫設(shè)計(jì)過程中的各級模式7.1.1數(shù)據(jù)庫設(shè)計(jì)的特點(diǎn)數(shù)據(jù)庫建設(shè)的基本規(guī)律三分技術(shù),七分管理,十二分基礎(chǔ)數(shù)據(jù)

管理基礎(chǔ)數(shù)據(jù)收集、入庫更新新的數(shù)據(jù)結(jié)構(gòu)(數(shù)據(jù))設(shè)計(jì)和行為(處理)設(shè)計(jì)相結(jié)合將數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)和數(shù)據(jù)處理設(shè)計(jì)密切結(jié)合數(shù)據(jù)庫設(shè)計(jì)的特點(diǎn)(續(xù))現(xiàn)實(shí)世界概念模型設(shè)計(jì)子模式設(shè)計(jì)物理數(shù)據(jù)庫設(shè)計(jì)邏輯數(shù)據(jù)庫設(shè)計(jì)建立數(shù)據(jù)庫數(shù)據(jù)分析功能分析功能模型功能說明事務(wù)設(shè)計(jì)程序說明應(yīng)用程序設(shè)計(jì)程序編碼調(diào)試結(jié)構(gòu)和行為分離的設(shè)計(jì)

7.1數(shù)據(jù)庫設(shè)計(jì)概述7.1.1數(shù)據(jù)庫設(shè)計(jì)的特點(diǎn)7.1.2數(shù)據(jù)庫設(shè)計(jì)方法(簡單講解)7.1.3數(shù)據(jù)庫設(shè)計(jì)的基本步驟7.1.4數(shù)據(jù)庫設(shè)計(jì)過程中的各級模式7.1.2數(shù)據(jù)庫設(shè)計(jì)方法手工與經(jīng)驗(yàn)相結(jié)合方法設(shè)計(jì)質(zhì)量與設(shè)計(jì)人員的經(jīng)驗(yàn)和水平有直接關(guān)系數(shù)據(jù)庫運(yùn)行一段時(shí)間后常常不同程度地發(fā)現(xiàn)各種問題,增加了維護(hù)代價(jià)規(guī)范設(shè)計(jì)法基本思想:過程迭代和逐步求精簡單了解數(shù)據(jù)庫設(shè)計(jì)方法(續(xù))新奧爾良(NewOrleans)方法將數(shù)據(jù)庫設(shè)計(jì)分為若干階段和步驟

基于E-R模型的數(shù)據(jù)庫設(shè)計(jì)方法概念設(shè)計(jì)階段廣泛采用3NF(第三范式)的設(shè)計(jì)方法邏輯階段可采用的有效方法ODL(ObjectDefinitionLanguage)方法面向?qū)ο蟮臄?shù)據(jù)庫設(shè)計(jì)方法數(shù)據(jù)庫設(shè)計(jì)方法(續(xù))計(jì)算機(jī)輔助設(shè)計(jì)ORACLEDesigner2000SYBASEPowerDesigner7.1數(shù)據(jù)庫設(shè)計(jì)概述7.1.1數(shù)據(jù)庫設(shè)計(jì)的特點(diǎn)7.1.2數(shù)據(jù)庫設(shè)計(jì)方法7.1.3數(shù)據(jù)庫設(shè)計(jì)的基本步驟7.1.4數(shù)據(jù)庫設(shè)計(jì)過程中的各級模式7.1.3數(shù)據(jù)庫設(shè)計(jì)的基本步驟數(shù)據(jù)庫設(shè)計(jì)分6個(gè)階段需求分析概念結(jié)構(gòu)設(shè)計(jì)邏輯結(jié)構(gòu)設(shè)計(jì)物理結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫實(shí)施數(shù)據(jù)庫運(yùn)行和維護(hù)

需求分析和概念設(shè)計(jì)獨(dú)立于任何數(shù)據(jù)庫管理系統(tǒng)邏輯設(shè)計(jì)和物理設(shè)計(jì)與選用的DBMS密切相關(guān)簡單了解數(shù)據(jù)庫設(shè)計(jì)的基本步驟(續(xù))一、數(shù)據(jù)庫設(shè)計(jì)的準(zhǔn)備工作:選定參加設(shè)計(jì)的人1.系統(tǒng)分析人員、數(shù)據(jù)庫設(shè)計(jì)人員

自始至終參與數(shù)據(jù)庫設(shè)計(jì)2.用戶和數(shù)據(jù)庫管理員

主要參加需求分析和數(shù)據(jù)庫的運(yùn)行維護(hù)3.應(yīng)用開發(fā)人員(程序員和操作員)

在系統(tǒng)實(shí)施階段參與進(jìn)來,負(fù)責(zé)編制程序和準(zhǔn)備軟硬件環(huán)境

數(shù)據(jù)庫設(shè)計(jì)的基本步驟(續(xù))二、數(shù)據(jù)庫設(shè)計(jì)的過程(六個(gè)階段)

⒈需求分析階段準(zhǔn)確了解與分析用戶需求(包括數(shù)據(jù)與處理)最困難、最耗費(fèi)時(shí)間的一步

⒉概念結(jié)構(gòu)設(shè)計(jì)階段整個(gè)數(shù)據(jù)庫設(shè)計(jì)的關(guān)鍵通過對用戶需求進(jìn)行綜合、歸納與抽象,形成一個(gè)獨(dú)立于具體DBMS的概念模型數(shù)據(jù)庫設(shè)計(jì)的基本步驟(續(xù))

⒊邏輯結(jié)構(gòu)設(shè)計(jì)階段將概念結(jié)構(gòu)轉(zhuǎn)換為某個(gè)DBMS所支持的數(shù)據(jù)模型對其進(jìn)行優(yōu)化

⒋數(shù)據(jù)庫物理設(shè)計(jì)階段為邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)(包括存儲結(jié)構(gòu)和存取方法)數(shù)據(jù)庫設(shè)計(jì)的基本步驟(續(xù))

⒌數(shù)據(jù)庫實(shí)施階段運(yùn)用DBMS提供的數(shù)據(jù)庫語言(如SQL)及宿主語言,根據(jù)邏輯設(shè)計(jì)和物理設(shè)計(jì)的結(jié)果建立數(shù)據(jù)庫編制與調(diào)試應(yīng)用程序組織數(shù)據(jù)入庫進(jìn)行試運(yùn)行 ⒍數(shù)據(jù)庫運(yùn)行和維護(hù)階段數(shù)據(jù)庫應(yīng)用系統(tǒng)經(jīng)過試運(yùn)行后即可投入正式運(yùn)行在數(shù)據(jù)庫系統(tǒng)運(yùn)行過程中必須不斷地對其進(jìn)行評價(jià)、調(diào)整與修改7.1數(shù)據(jù)庫設(shè)計(jì)概述7.1.1數(shù)據(jù)庫設(shè)計(jì)的特點(diǎn)7.1.2數(shù)據(jù)庫設(shè)計(jì)方法7.1.3數(shù)據(jù)庫設(shè)計(jì)的基本步驟7.1.4數(shù)據(jù)庫設(shè)計(jì)過程中的各級模式7.1.4數(shù)據(jù)庫設(shè)計(jì)過程中的各級模式數(shù)據(jù)庫設(shè)計(jì)不同階段形成的數(shù)據(jù)庫各級模式數(shù)據(jù)庫的各級模式

第七章數(shù)據(jù)庫設(shè)計(jì)7.1數(shù)據(jù)庫設(shè)計(jì)概述7.2需求分析(自學(xué),軟件工程已講,主要區(qū)別DD、DFD)7.3概念結(jié)構(gòu)設(shè)計(jì)7.4邏輯結(jié)構(gòu)設(shè)計(jì)7.5數(shù)據(jù)庫的物理設(shè)計(jì)7.6數(shù)據(jù)庫實(shí)施和維護(hù)7.7小結(jié)第七章數(shù)據(jù)庫設(shè)計(jì)7.1數(shù)據(jù)庫設(shè)計(jì)概述7.2需求分析7.3概念結(jié)構(gòu)設(shè)計(jì)7.4邏輯結(jié)構(gòu)設(shè)計(jì)7.5數(shù)據(jù)庫的物理設(shè)計(jì)7.6數(shù)據(jù)庫實(shí)施和維護(hù)7.7小結(jié)7.3概念結(jié)構(gòu)設(shè)計(jì)7.3.1概念結(jié)構(gòu)7.3.2概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟7.3.3數(shù)據(jù)抽象與局部視圖設(shè)計(jì)7.3.4視圖的集成7.3.1概念結(jié)構(gòu)什么是概念結(jié)構(gòu)設(shè)計(jì)將需求分析得到的用戶需求抽象為信息結(jié)構(gòu)即概念模型的過程就是概念結(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ù)庫設(shè)計(jì)的關(guān)鍵概念結(jié)構(gòu)(續(xù))現(xiàn)實(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)換描述概念模型的工具E-R模型7.3概念結(jié)構(gòu)設(shè)計(jì)7.3.1概念結(jié)構(gòu)7.3.2概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟7.3.3數(shù)據(jù)抽象與局部視圖設(shè)計(jì)7.3.4視圖的集成7.3.2概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟設(shè)計(jì)概念結(jié)構(gòu)的四類方法自頂向下

首先定義全局概念結(jié)構(gòu)的框架,然后逐步細(xì)化自頂向下策略7.3.2概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟自底向上

首先定義各局部應(yīng)用的概念結(jié)構(gòu),然后將它們集成起來,得到全局概念結(jié)構(gòu)自底向上策略概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟(續(xù))逐步擴(kuò)張

首先定義最重要的核心概念結(jié)構(gòu),然后向外擴(kuò)充,以滾雪球的方式逐步生成其他概念結(jié)構(gòu),直至總體概念結(jié)構(gòu)逐步擴(kuò)張策略概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟(續(xù))混合策略將自頂向下和自底向上相結(jié)合,用自頂向下策略設(shè)計(jì)一個(gè)全局概念結(jié)構(gòu)的框架,以它為骨架集成由自底向上策略中設(shè)計(jì)的各局部概念結(jié)構(gòu)。概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟(續(xù))常用策略自頂向下地進(jìn)行需求分析自底向上地設(shè)計(jì)概念結(jié)構(gòu)概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟(續(xù))自底向上設(shè)計(jì)概念結(jié)構(gòu)的步驟

第1步:抽象數(shù)據(jù)并設(shè)計(jì)局部視圖 第2步:集成局部視圖,得到全局概念結(jié)構(gòu)7.3概念結(jié)構(gòu)設(shè)計(jì)7.3.1概念結(jié)構(gòu)7.3.2概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟7.3.3數(shù)據(jù)抽象與局部視圖設(shè)計(jì)7.3.4視圖的集成7.3.3數(shù)據(jù)抽象與局部視圖設(shè)計(jì)數(shù)據(jù)抽象局部視圖設(shè)計(jì)數(shù)據(jù)抽象抽象是對實(shí)際的人、物、事和概念中抽取所關(guān)心的共同特性,忽略非本質(zhì)的細(xì)節(jié),并把這些特性用各種概念精確地加以描述。概念結(jié)構(gòu)是對現(xiàn)實(shí)世界的一種抽象數(shù)據(jù)抽象(續(xù))三種常用抽象1.分類(Classification)定義某一類概念作為現(xiàn)實(shí)世界中一組對象的類型抽象了對象值和型之間的“ismemberof”的語義數(shù)據(jù)抽象(續(xù))2.聚集(Aggregation)定義某一類型的組成成分抽象了對象內(nèi)部類型和成分之間“ispartof”的語義聚集數(shù)據(jù)抽象(續(xù))3.概括(Generalization)定義類型之間的一種子集聯(lián)系抽象了類型之間的“issubsetof”的語義繼承性概括局部視圖設(shè)計(jì)設(shè)計(jì)分E-R圖的步驟:⒈選擇局部應(yīng)用⒉逐一設(shè)計(jì)分E-R圖⒈選擇局部應(yīng)用在多層的數(shù)據(jù)流圖中選擇一個(gè)適當(dāng)層次的數(shù)據(jù)流圖,作為設(shè)計(jì)分E-R圖的出發(fā)點(diǎn)通常以中層數(shù)據(jù)流圖作為設(shè)計(jì)分E-R圖的依據(jù)設(shè)計(jì)分E-R圖的出發(fā)點(diǎn)

⒉逐一設(shè)計(jì)分E-R圖任務(wù)將各局部應(yīng)用涉及的數(shù)據(jù)分別從數(shù)據(jù)字典中抽取出來參照數(shù)據(jù)流圖,標(biāo)定各局部應(yīng)用中的實(shí)體、實(shí)體的屬性、標(biāo)識實(shí)體的碼確定實(shí)體之間的聯(lián)系及其類型(1:1,1:n,m:n)區(qū)分屬性和實(shí)體的兩條準(zhǔn)則:(1)屬性不能再具有需要描述的性質(zhì)。即屬性必須是不可分的數(shù)據(jù)項(xiàng),不能再由另一些屬性組成(2)屬性不能與其他實(shí)體具有聯(lián)系。聯(lián)系只發(fā)生在實(shí)體之間逐一設(shè)計(jì)分E-R圖(續(xù))職稱作為一個(gè)實(shí)體逐一設(shè)計(jì)分E-R圖(續(xù))病房作為一個(gè)實(shí)體逐一設(shè)計(jì)分E-R圖(續(xù))倉庫作為一個(gè)實(shí)體逐一設(shè)計(jì)分E-R圖(續(xù))[實(shí)例]銷售管理子系統(tǒng)分E-R圖的設(shè)計(jì)銷售管理子系統(tǒng)的主要功能:處理顧客和銷售員送來的訂單工廠是根據(jù)訂貨安排生產(chǎn)的交出貨物同時(shí)開出發(fā)票收到顧客付款后,根據(jù)發(fā)票存根和信貸情況進(jìn)行應(yīng)收款處理逐一設(shè)計(jì)分E-R圖(續(xù))下圖是第一層數(shù)據(jù)流圖,虛線部分劃出了系統(tǒng)邊界圖7.18銷售管理子系統(tǒng)第一層數(shù)據(jù)流圖

逐一設(shè)計(jì)分E-R圖(續(xù))上圖中把系統(tǒng)功能又分為4個(gè)子系統(tǒng),下面四個(gè)圖是第二層數(shù)據(jù)流圖圖7.19接收訂單逐一設(shè)計(jì)分E-R圖(續(xù))圖7.20處理訂單逐一設(shè)計(jì)分E-R圖(續(xù))圖7.21開發(fā)票

逐一設(shè)計(jì)分E-R圖(續(xù))圖7.22支付過賬逐一設(shè)計(jì)分E-R圖(續(xù))分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í)際上是訂單細(xì)節(jié)和產(chǎn)品的聯(lián)系。(3)圖7.21中“發(fā)票主清單”是一個(gè)數(shù)據(jù)存儲,不必作為實(shí)體加入分E-R圖(4)工廠對大宗訂貨給予優(yōu)惠逐一設(shè)計(jì)分E-R圖(續(xù))得到分E-R圖如下圖所示

銷售管理子系統(tǒng)的分E-R圖逐一設(shè)計(jì)分E-R圖(續(xù))對每個(gè)實(shí)體定義的屬性如下:顧客:{顧客號,顧客名,地址,電話,信貸狀況,賬目余額}訂單:{訂單號,顧客號,訂貨項(xiàng)數(shù),訂貨日期,交貨日期,工種號,生產(chǎn)地點(diǎn)}訂單細(xì)則:{訂單號,細(xì)則號,零件號,訂貨數(shù),金額}應(yīng)收賬款:{顧客號,訂單號,發(fā)票號,應(yīng)收金額,支付日期,支付金額,當(dāng)前余額,貨款限額}產(chǎn)品描述:{產(chǎn)品號,產(chǎn)品名,單價(jià),重量}折扣規(guī)則:{產(chǎn)品號,訂貨量,折扣}7.3概念結(jié)構(gòu)設(shè)計(jì)7.3.1概念結(jié)構(gòu)7.3.2概念結(jié)構(gòu)設(shè)計(jì)的方法與步驟7.3.3數(shù)據(jù)抽象與局部視圖設(shè)計(jì)7.3.4視圖的集成7.3.4視圖的集成各個(gè)局部視圖即分E-R圖建立好后,還需要對它們進(jìn)行合并,集成為一個(gè)整體的數(shù)據(jù)概念結(jié)構(gòu)即總E-R圖。視圖集成的兩種方式多個(gè)分E-R圖一次集成一次集成多個(gè)分E-R圖通常用于局部視圖比較簡單時(shí)視圖的集成(續(xù))逐步集成用累加的方式一次集成兩個(gè)分E-R圖視圖的集成(續(xù))集成局部E-R圖的步驟1.合并2.修改與重構(gòu)視圖的集成(續(xù))視圖集成合并分E-R圖,生成初步E-R圖

問題:各分E-R圖存在沖突各個(gè)分E-R圖之間必定會存在許多不一致的地方合并分E-R圖的主要工作與關(guān)鍵合理消除各分E-R圖的沖突沖突的種類屬性沖突命名沖突結(jié)構(gòu)沖突⒈屬性沖突兩類屬性沖突屬性域沖突屬性值的類型取值范圍取值集合不同屬性取值單位沖突⒉命名沖突兩類命名沖突同名異義:不同意義的對象在不同的局部應(yīng)用中具有相同的名字異名同義(一義多名):同一意義的對象在不同的局部應(yīng)用中具有不同的名字⒊結(jié)構(gòu)沖突三類結(jié)構(gòu)沖突同一對象在不同應(yīng)用中具有不同的抽象同一實(shí)體在不同分E-R圖中所包含的屬性個(gè)數(shù)和屬性排列次序不完全相同實(shí)體之間的聯(lián)系在不同局部視圖中呈現(xiàn)不同的類型消除不必要的冗余,設(shè)計(jì)基本E-R圖

基本任務(wù)消除不必要的冗余,設(shè)計(jì)生成基本E-R圖合并初步E-R圖分E-R圖可能存在冗余的數(shù)據(jù)和冗余的實(shí)體間聯(lián)系基本E-R圖消除不必要的冗余消除不必要的冗余,設(shè)計(jì)基本E-R圖(續(xù))冗余消除冗余的方法1.冗余冗余的數(shù)據(jù)是指可由基本數(shù)據(jù)導(dǎo)出的數(shù)據(jù)

冗余的聯(lián)系是指可由其他聯(lián)系導(dǎo)出的聯(lián)系冗余數(shù)據(jù)和冗余聯(lián)系容易破壞數(shù)據(jù)庫的完整性,給數(shù)據(jù)庫維護(hù)增加困難消除不必要的冗余后的初步E-R圖稱為基本E-R圖消除冗余的方法分析方法以數(shù)據(jù)字典和數(shù)據(jù)流圖為依據(jù)根據(jù)數(shù)據(jù)字典中關(guān)于數(shù)據(jù)項(xiàng)之間的邏輯關(guān)系消除冗余消除冗余的方法(續(xù))效率VS冗余信息需要根據(jù)用戶的整體需求來確定若人為地保留了一些冗余數(shù)據(jù),則應(yīng)把數(shù)據(jù)字典中數(shù)據(jù)關(guān)聯(lián)的說明作為完整性約束條件Q4=∑Q5一旦Q5修改后就應(yīng)當(dāng)觸發(fā)完整性檢查,對Q4進(jìn)行修改消除冗余的方法(續(xù))規(guī)范化理論函數(shù)依賴的概念提供了消除冗余聯(lián)系的形式化工具消除冗余的方法(續(xù))方法1.確定分E-R圖實(shí)體之間的數(shù)據(jù)依賴,并用實(shí)體碼之間的函數(shù)依賴表示。勞動人事管理的分E-R圖

部門和職工之間一對多的聯(lián)系可表示為:職工號→部門號職工和項(xiàng)目之間多對多的聯(lián)系可表示為:(職工號,項(xiàng)目號)→工作天數(shù)得到函數(shù)依賴集FL

消除冗余的方法(續(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ū)分。消除冗余,設(shè)計(jì)生成基本E-R圖實(shí)例[實(shí)例]某工廠管理信息系統(tǒng)的視圖集成。

書中圖1.14(c)、圖7.24、圖7.29分別為該廠物資、銷售和勞動人事管理的分E-R圖圖7.30為該系統(tǒng)的基本E-R圖消除冗余,設(shè)計(jì)生成基本E-R圖實(shí)例(續(xù))圖1.14(c)工廠物資管理E-R圖該廠物資管理分E-R圖消除冗余,設(shè)計(jì)生成基本E-R圖實(shí)例(續(xù))圖7.24銷售管理子系統(tǒng)的分E-R圖該廠銷售管理分E-R圖消除冗余,設(shè)計(jì)生成基本E-R圖實(shí)例(續(xù))圖7.29勞動人事管理的分E-R圖該廠勞動人事管理分E-R圖消除冗余,設(shè)計(jì)生成基本E-R圖實(shí)例(續(xù))系統(tǒng)的基本E-R(圖7.30)某工廠管理信息系統(tǒng)的基本E-R圖

少了職工實(shí)體少了職工實(shí)體間聯(lián)系庫存子系統(tǒng)ER圖消除冗余,設(shè)計(jì)生成基本E-R圖實(shí)例(續(xù))集成過程,解決了以下問題:異名同義,項(xiàng)目和產(chǎn)品含義相同庫存管理中職工與倉庫的工作關(guān)系已包含在勞動人事管理的部門與職工之間的聯(lián)系之中,所以可以取消職工之間領(lǐng)導(dǎo)與被領(lǐng)導(dǎo)關(guān)系可由部門與職工(經(jīng)理)之間的領(lǐng)導(dǎo)關(guān)系、部門與職工之間的從屬關(guān)系兩者導(dǎo)出,所以也可以取消驗(yàn)證整體概念結(jié)構(gòu)視圖集成后形成一個(gè)整體的數(shù)據(jù)庫概念結(jié)構(gòu),對該整體概念結(jié)構(gòu)還必須進(jìn)行進(jìn)一步驗(yàn)證,確保它能夠滿足下列條件:整體概念結(jié)構(gòu)內(nèi)部必須具有一致性,不存在互相矛盾的表達(dá)整體概念結(jié)構(gòu)能準(zhǔn)確地反映原來的每個(gè)視圖結(jié)構(gòu),包括屬性、實(shí)體及實(shí)體間的聯(lián)系整體概念結(jié)構(gòu)能滿足需要分析階段所確定的所有要求整體概念結(jié)構(gòu)最終還應(yīng)該提交給用戶,征求用戶和有關(guān)人員的意見,進(jìn)行評審、修改和優(yōu)化,然后把它確定下來,作為數(shù)據(jù)庫的概念結(jié)構(gòu),作為進(jìn)一步設(shè)計(jì)數(shù)據(jù)庫的依據(jù)。概念結(jié)構(gòu)設(shè)計(jì)小結(jié)概念結(jié)構(gòu)設(shè)計(jì)的步驟抽象數(shù)據(jù)并設(shè)計(jì)局部視圖集成局部視圖,得到全局概念結(jié)構(gòu)驗(yàn)證整體概念結(jié)構(gòu)數(shù)據(jù)抽象分類聚集概括概念結(jié)構(gòu)設(shè)計(jì)小結(jié)設(shè)計(jì)局部視圖⒈選擇局部應(yīng)用

2.逐一設(shè)計(jì)分E-R圖標(biāo)定局部應(yīng)用中的實(shí)體、屬性、碼,實(shí)體間的聯(lián)系用E-R圖描述出來概念結(jié)構(gòu)設(shè)計(jì)小結(jié)集成局部視圖1.合并分E-R圖,生成初步E-R圖消除沖突屬性沖突命名沖突結(jié)構(gòu)沖突2.修改與重構(gòu)消除不必要的冗余,設(shè)計(jì)生成基本E-R圖分析方法規(guī)范化理論第七章數(shù)據(jù)庫設(shè)計(jì)7.1數(shù)據(jù)庫設(shè)計(jì)概述7.2需求分析7.3概念結(jié)構(gòu)設(shè)計(jì)7.4邏輯結(jié)構(gòu)設(shè)計(jì)7.5數(shù)據(jù)庫的物理設(shè)計(jì)7.6數(shù)據(jù)庫的實(shí)施和維護(hù)7.7小結(jié)7.4邏輯結(jié)構(gòu)設(shè)計(jì)邏輯結(jié)構(gòu)設(shè)計(jì)的任務(wù)把概念結(jié)構(gòu)設(shè)計(jì)階段設(shè)計(jì)好的基本E-R圖轉(zhuǎn)換為與選用DBMS產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu)邏輯結(jié)構(gòu)設(shè)計(jì)的步驟將概念結(jié)構(gòu)轉(zhuǎn)化為一般的關(guān)系、網(wǎng)狀、層次模型將轉(zhuǎn)換來的關(guān)系、網(wǎng)狀、層次模型向特定DBMS支持下的數(shù)據(jù)模型轉(zhuǎn)換對數(shù)據(jù)模型進(jìn)行優(yōu)化

邏輯結(jié)構(gòu)設(shè)計(jì)(續(xù))邏輯結(jié)構(gòu)設(shè)計(jì)時(shí)的3個(gè)步驟

7.4邏輯結(jié)構(gòu)設(shè)計(jì)7.4.1E-R圖向關(guān)系模型的轉(zhuǎn)換7.4.2數(shù)據(jù)模型的優(yōu)化7.4.3設(shè)計(jì)用戶子模式7.4.1E-R圖向關(guān)系模型的轉(zhuǎn)換轉(zhuǎn)換內(nèi)容轉(zhuǎn)換原則E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))E-R圖向關(guān)系模型的轉(zhuǎn)換要解決的問題如何將實(shí)體型和實(shí)體間的聯(lián)系轉(zhuǎn)換為關(guān)系模式如何確定這些關(guān)系模式的屬性和碼轉(zhuǎn)換內(nèi)容將E-R圖轉(zhuǎn)換為關(guān)系模型:將實(shí)體、實(shí)體的屬性和實(shí)體之間的聯(lián)系轉(zhuǎn)換為關(guān)系模式。E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))實(shí)體型間的聯(lián)系有以下不同情況:(1)一個(gè)1:1聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與任意一端對應(yīng)的關(guān)系模式合并。轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式與某一端實(shí)體對應(yīng)的關(guān)系模式合并(2)一個(gè)1:n聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與n端對應(yīng)的關(guān)系模式合并。轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式與n端對應(yīng)的關(guān)系模式合并E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))(3)一個(gè)m:n聯(lián)系轉(zhuǎn)換為一個(gè)關(guān)系模式。 例,“選修”聯(lián)系是一個(gè)m:n聯(lián)系,可以將它轉(zhuǎn)換為如下關(guān)系模式,其中學(xué)號與課程號為關(guān)系的組合碼:選修(學(xué)號,課程號,成績)(4)三個(gè)或三個(gè)以上實(shí)體間的一個(gè)多元聯(lián)系轉(zhuǎn)換為一個(gè)關(guān)系模式。 例,“講授”聯(lián)系是一個(gè)三元聯(lián)系,可以將它轉(zhuǎn)換為如下關(guān)系模式,其中課程號、職工號和書號為關(guān)系的組合碼:講授(課程號,職工號,書號)E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))(5)具有相同碼的關(guān)系模式可合并目的:減少系統(tǒng)中的關(guān)系個(gè)數(shù)合并方法:將其中一個(gè)關(guān)系模式的全部屬性加入到另一個(gè)關(guān)系模式中,然后去掉其中的同義屬性(可能同名也可能不同名),并適當(dāng)調(diào)整屬性的次序E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))注意:從理論上講,1:1聯(lián)系可以與任意一端對應(yīng)的關(guān)系模式合并但在一些情況下,與不同的關(guān)系模式合并效率會大不一樣。因此究竟應(yīng)該與哪端的關(guān)系模式合并需要依應(yīng)用的具體情況而定。由于連接操作是最費(fèi)時(shí)的操作,所以一般應(yīng)以盡量減少連接操作為目標(biāo)。例如,如果經(jīng)常要查詢某個(gè)班級的班主任姓名,則將管理聯(lián)系與教師關(guān)系合并更好些。E-R圖向關(guān)系模型的轉(zhuǎn)換(續(xù))[例]把圖7.30(PPT——P96)中虛線上部的E-R圖轉(zhuǎn)換為關(guān)系模型部門實(shí)體對應(yīng)的關(guān)系模式部門(部門號,部門名,經(jīng)理的職工號,…)此關(guān)系模式已包含了聯(lián)系“領(lǐng)導(dǎo)”所對應(yīng)的關(guān)系模式經(jīng)理的職工號是關(guān)系的候選碼職工實(shí)體對應(yīng)的關(guān)系模式職工(職

溫馨提示

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

評論

0/150

提交評論