數(shù)據(jù)庫設計過程_第1頁
數(shù)據(jù)庫設計過程_第2頁
數(shù)據(jù)庫設計過程_第3頁
數(shù)據(jù)庫設計過程_第4頁
數(shù)據(jù)庫設計過程_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

主講教師:傅志輝浙江商業(yè)職業(yè)技術(shù)學院快速消費品數(shù)據(jù)分析直方圖分析09拓展:數(shù)據(jù)庫設計與數(shù)據(jù)存取———數(shù)據(jù)庫設計過程數(shù)據(jù)庫設計過程需求分析概念數(shù)據(jù)庫邏輯數(shù)據(jù)庫01020304物理數(shù)據(jù)庫0501-數(shù)據(jù)庫設計過程

數(shù)據(jù)庫設計是指對于一個給定的應用領域,設計優(yōu)化的數(shù)據(jù)庫邏輯和物理結(jié)構(gòu),使之滿足用戶的管理需求和數(shù)據(jù)操作需求,有效地支持各種應用系統(tǒng)的開發(fā)和運行。數(shù)據(jù)庫設計的目標是為用戶和各種應用系統(tǒng)提供一個高效率的運行環(huán)境。效率包括兩個方面,一是數(shù)據(jù)庫的存取效率,二是存儲空間的利用率。

數(shù)據(jù)庫設計的關(guān)鍵是構(gòu)造合理的數(shù)據(jù)模型。這個數(shù)據(jù)模型要較好地反映現(xiàn)實世界信息、信息之間的聯(lián)系,能反映出使用者對數(shù)據(jù)的需求和操作特點,能方便地在某個選定的DBMS支持下實現(xiàn)。數(shù)據(jù)庫設計輔助工具

工具模型技術(shù)業(yè)務模型面向?qū)ο蠓治龊驮O計技術(shù)結(jié)構(gòu)化分析和設計技術(shù)軟件測試技術(shù)關(guān)系數(shù)據(jù)庫設計技術(shù)ErwinPowerDesignerVisioVC++6.0PycharmEclipse單元測試工具功能測試工具性能測試工具程序流程圖DFD時序圖狀態(tài)圖CASE工具IDE工具測試工具數(shù)據(jù)模型類圖E-R圖數(shù)據(jù)庫設計的方法-直接設計方法數(shù)據(jù)要求數(shù)據(jù)要求數(shù)據(jù)要求數(shù)據(jù)處理要求數(shù)據(jù)處理要求關(guān)系數(shù)據(jù)庫模式直接設計方法的缺點現(xiàn)在數(shù)據(jù)庫的數(shù)據(jù)量大,數(shù)據(jù)間關(guān)系復雜,用戶眾多,使用要求各式各樣,很難僅憑經(jīng)驗進行設計。直接設計把數(shù)據(jù)的邏輯結(jié)構(gòu),物理結(jié)構(gòu)、處理要求等一起考慮,很難對模式進行評價和優(yōu)化。用戶需求一旦發(fā)生變化,數(shù)據(jù)結(jié)構(gòu)很難隨之發(fā)生變化。數(shù)據(jù)庫設計與具體的DBMS緊密結(jié)合,移植困難。缺乏文檔資料,難于與用戶交流,對設計難于評審,往往到運行中才能發(fā)現(xiàn)問題。難以由多個人合作進行設計。數(shù)據(jù)庫設計的方法-規(guī)范化設計方法規(guī)范化設計方法認為數(shù)據(jù)庫設計涉及了很多問題,每類問題有其不同的自然論域。規(guī)范化設計方法依據(jù)軟件工程的思想,把整個設計過程劃分為若干階段,把數(shù)據(jù)庫設計這一復雜的大問題分為若干相對簡單的小問題,每個階段只解決整個設計中的部分問題。整個設計方法是迭代過程,每一過程完成時要進行設計分析,產(chǎn)生各種設計文檔,并組織評審和用戶交流,如不滿足要求則進行修改。數(shù)據(jù)庫的生命周期數(shù)據(jù)庫的設計階段需求分析概念設計邏輯設計物理設計數(shù)據(jù)庫的實現(xiàn)和操作階段數(shù)據(jù)庫的實現(xiàn)操作與監(jiān)督修改與調(diào)整數(shù)據(jù)庫的設計過程需求分析概念數(shù)據(jù)庫設計邏輯數(shù)據(jù)庫設計物理數(shù)據(jù)庫設計需求分析說明書概念數(shù)據(jù)庫模式邏輯數(shù)據(jù)庫模式物理數(shù)據(jù)庫模式獨立于數(shù)據(jù)庫管理系統(tǒng)與數(shù)據(jù)庫管理系統(tǒng)相關(guān)現(xiàn)實世界規(guī)范化設計的特點反復性數(shù)據(jù)庫設計不可能“一氣呵成”,需要反復推敲和修改才能完成。前階段的設計是后階段設計的基礎和起點,但后階段也可向前階段反饋其要求,如此反復修改,以臻完善。試探性數(shù)據(jù)庫設計結(jié)果一般不是唯一的。設計的過程是個試探的過程。在設計過程中,有各式各樣的要求和制約因素,它們之間往往是矛盾的。數(shù)據(jù)庫的很難說是最佳的,常常得之于東,而失之于西,何去何從取決于數(shù)據(jù)庫設計者的權(quán)衡和單位的決策。規(guī)范化設計的特點分步進行數(shù)據(jù)庫設計常常由不同的人員分階段進行。這樣做,一是由于技術(shù)上分工的需要,二是為了分段把關(guān),逐級審查,保證設計的質(zhì)量和進度。需求分析需求分析的任務是通過詳細調(diào)查現(xiàn)實世界要處理的對象(組織、部門、企業(yè)等),充分了解原系統(tǒng)(手工系統(tǒng)或計算機系統(tǒng))的工作情況,明確用戶的各種需求,并預測系統(tǒng)今后可能的擴充和改變,然后在此基礎上確定新系統(tǒng)的功能。調(diào)查的重點是“數(shù)據(jù)”和“處理”,包括:

信息要求指用戶需要從數(shù)據(jù)庫中獲得的信息的內(nèi)容與性質(zhì)。從中可以導出數(shù)據(jù)要求。

處理要求指用戶要完成什么處理功能,對處理的響應時間和處理方式的要求。

安全性與完整性的要求需求分析的特點應用領域的需求分析調(diào)查定義數(shù)據(jù)庫支持的信息與應用定義數(shù)據(jù)庫操作任務定義數(shù)據(jù)項字典預測應用領域的未來改變03-概念數(shù)據(jù)庫概念數(shù)據(jù)庫的設計包括兩方面:事務設計考察需求分析階段提出的數(shù)據(jù)庫操作任務,形成數(shù)據(jù)庫事務的高級說明。概念數(shù)據(jù)庫模式設計以需求分析階段所識別的數(shù)據(jù)項和應用領域的未來改變信息為基礎,使用高級數(shù)據(jù)模型建立概念數(shù)據(jù)庫模式。將需求分析得到的用戶需求抽象成為信息結(jié)構(gòu)即概念模型的過程就是概念數(shù)據(jù)庫模式設計。概念數(shù)據(jù)庫模式設計的目標是:準確描述應用領域的信息模式,支持用戶的各種應用。既易于轉(zhuǎn)化為邏輯數(shù)據(jù)庫模式,又容易為用戶理解。概念數(shù)據(jù)模型在概念設計階段一般都使用概念數(shù)據(jù)模型,這類數(shù)據(jù)模型具有以下特點:具有很強的表達能力,能夠方便地表達各種類型的數(shù)據(jù)、數(shù)據(jù)間的聯(lián)系和各種約束。簡單易懂,概念清晰,容易使用組成模型的概念少,概念定義嚴格,無二義性,不同概念的語義不重疊。具有使用圖形表示概念模式的能力。實體聯(lián)系模型(ER模型)實體實體是現(xiàn)實世界中客觀存在并可以相互區(qū)別的事物。實體可以是物理存在的事物,如人、汽車等;也可以是抽象的概念和聯(lián)系,如選課,興趣,靈感等。屬性每個實體都有一組特征或性質(zhì),稱為實體的屬性。實體屬性的一組特定值確定了一個特定的實體。實體型是一個具有相同屬性的實體集合,由一個實體型名字和一組屬性來定義。實體型的定義稱為實體模式,描述了一組實體的公共結(jié)構(gòu)。實體型中所表示實體集合中的任一實體稱為該實體型的實例。鍵實體型中用以唯一標識一個實體的屬性或?qū)傩越M稱為鍵,用來區(qū)別不同的實體。由一個屬性構(gòu)成的鍵稱為簡單鍵,由多個屬性構(gòu)成的鍵稱為復合鍵。對于同一實體型的不同實體,鍵的值必須相異。一個實體型可以有多個鍵。屬性的值域?qū)嶓w型的每個簡單屬性都具有一個值域,說明這個屬性的可能取值范圍。實體間的聯(lián)系在現(xiàn)實世界中,事物內(nèi)部以及事物之間是有聯(lián)系的,這些聯(lián)系在信息世界中反映為實體(型)內(nèi)部的聯(lián)系和實體(型)之間的聯(lián)系。實體內(nèi)部的聯(lián)系通常是指組成實體的各屬性之間的聯(lián)系。實體之間的聯(lián)系通常是指不同的實體型之間的聯(lián)系。實體聯(lián)系圖實體聯(lián)系圖是表示ER模型工具,簡稱ER圖。ER圖實體型:弱實體型:聯(lián)系型:識別聯(lián)系型:屬性:鍵屬性:__多值屬性:導出屬性:復合屬性:…B具有全域關(guān)聯(lián)約束:ABR1:1聯(lián)系型:ABR111:N聯(lián)系型:ABR1NM:N聯(lián)系型:ABRMN實體性E上的結(jié)構(gòu)約束:BR(min,max)教師名字身份證號工資生日職稱地址講授課程所屬教研室性別郵編市區(qū)單位學校信箱課程課程名學時數(shù)地點內(nèi)容T_S_C教研室課程名學時數(shù)地點內(nèi)容T_D性別年級學生名字生日系主任編號地點名字S_D系B_DN111NN擴展的實體聯(lián)系模型擴展的實體聯(lián)系模型是ER模型的擴充,簡稱EER模型。概念設計的方法與策略概念數(shù)據(jù)庫設計包括如下步驟:確定實體型、實體型的屬性和鍵;確定實體型之間的聯(lián)系及其相關(guān)的約束;使用演繹或歸納的方法確定實體型之間的超類/子類聯(lián)系及其相關(guān)約束;確定實體型之間的范疇聯(lián)系及其相關(guān)約束;形成概念數(shù)據(jù)庫的EER圖。概念設計的方法集中式設計方法合并在需求分析階段得到的各種應用的需求。在第一步的基礎時設計一個概念模式滿足所有應用的需求。視圖綜合設計方法視圖設計階段根據(jù)每個應用的需求,獨立地為每個用戶和應用設計一個概念數(shù)據(jù)庫模式(視圖)。視圖合并階段把所有視圖有機地合并成為一個統(tǒng)一的概念模式。概念設計的策略自頂向下從一個包含高級抽象概念結(jié)構(gòu)的模式出發(fā),對高級抽象概念結(jié)構(gòu)逐步求精,形成最終的概念數(shù)據(jù)庫模式。需求全局概念模式概念模式概念模式概念模式概念模式概念模式概念模式……………

自底向上從包含基本概念結(jié)構(gòu)的模式出發(fā),逐步組合這些基本概念結(jié)構(gòu),形成最終的概念數(shù)據(jù)庫模式。子需求全局概念模式概念模式概念模式概念模式概念模式概念模式概念模式………子需求子需求子需求…逐步擴張

首先定義最重要的核心概念結(jié)構(gòu)的模式,然后向外擴充,以滾雪球的方式逐步生成其他概念結(jié)構(gòu),直至得到最終的概念數(shù)據(jù)庫模式。核心需求需求核心概念結(jié)構(gòu)…全局概念結(jié)構(gòu)混合策略

首先使用自頂向下的策略把應用需求劃分為多個需求子集合;然后,對于每個需求子集合,使用自底向上的策略設計局部模式;最后,組合局部模式,形成最后的概念數(shù)據(jù)庫模式。需求需求需求需求需求需求需求概念模式1.1概念模式1.2概念模式n.1概念模式n.2概念模式1概念模式n全局概念模式…………視圖綜合設計方法視圖綜合設計方法分為兩步:設計局部概念模式把局部概念模式合并為一個全局概念模式,即最終的概念數(shù)據(jù)庫模式。局部概念模式設計根據(jù)局部需求分析的結(jié)果產(chǎn)生局部實體。根據(jù)局部需求分析的結(jié)果確定局部實體之間的聯(lián)系及其結(jié)構(gòu)約束。分析局部實體之間的關(guān)系,應用演繹或歸納過程,確定局部實體間的超類/子類聯(lián)系,共享子類和范疇及其相關(guān)約束。構(gòu)造局部EER圖。局部ER圖設計產(chǎn)品組裝零件編號性能產(chǎn)品名零件數(shù)零件號材料名零件名耗用量mn生產(chǎn)部門的局部ER圖產(chǎn)品使用材料產(chǎn)品號價格產(chǎn)品名用量材料號價格材料名庫存量mn供應部門的局部ER圖倉庫設計全局概念模式 設計全局概念模式(即視圖集成)可以有兩種方法:多個分ER圖一次集成逐步集成,用累加的方式一次集成兩個分ER圖。一次集成ER圖1ER圖2ER圖n初步ER圖基本ER圖…逐步集成ER圖1ER圖2ER圖3ER圖12基本ER圖…初步ER圖總體ER圖設計使用材料價格用量材料號價格材料名庫存量mn倉庫產(chǎn)品組裝零件產(chǎn)品號性能產(chǎn)品名零件數(shù)耗用量mn零件號零件名消耗n1修改和重構(gòu)在初步ER圖中,可能存在一些冗余的數(shù)據(jù)和實體間冗余的聯(lián)系。所謂冗余的數(shù)據(jù)是指可由基本數(shù)據(jù)導出的數(shù)據(jù),冗余的聯(lián)系是指可由其他聯(lián)系導出的聯(lián)系。冗余數(shù)據(jù)和冗余的聯(lián)系容易破壞數(shù)據(jù)庫的完整性,應當予以消除。消除了冗余后的初步ER圖稱為基本ER圖。消除冗余主要采用分析方法,即以數(shù)據(jù)字典和數(shù)據(jù)流圖為依據(jù),根據(jù)數(shù)據(jù)字典中關(guān)于數(shù)據(jù)項之間的邏輯關(guān)系的說明來消除冗余。基本ER圖材料價格材料號價格材料名庫存量m倉庫產(chǎn)品組裝零件產(chǎn)品號性能產(chǎn)品名零件數(shù)耗用量mn零件號零件名消耗n1邏輯數(shù)據(jù)庫邏輯數(shù)據(jù)庫的設計的任務是把概念數(shù)據(jù)庫設計階段產(chǎn)生的概念數(shù)據(jù)庫模式變換為邏輯數(shù)據(jù)庫模式。邏輯數(shù)據(jù)庫設計依賴于邏輯數(shù)據(jù)模型和數(shù)據(jù)庫管理系統(tǒng)。邏輯數(shù)據(jù)庫設計的目標包括:滿足用戶的完整性和安全性要求。動態(tài)關(guān)系至少具有第三規(guī)范形式,靜態(tài)關(guān)系至少具有第一規(guī)范形式。能夠在邏輯級上高效率地支持各種數(shù)據(jù)庫事務的運行。存儲空間利用率高。邏輯數(shù)據(jù)庫設計的步驟形成初始關(guān)系數(shù)據(jù)庫模式關(guān)系模式規(guī)范化關(guān)系模式優(yōu)化定義關(guān)系上的完整性和安全性約束子模式定義性能估計形成初始關(guān)系數(shù)據(jù)庫模式初始關(guān)系數(shù)據(jù)庫模式是指直接由概念數(shù)據(jù)庫模式生成的關(guān)系數(shù)據(jù)庫模式。初始數(shù)據(jù)庫模式生成的目的是把概念數(shù)據(jù)庫模式的實體、實體間的聯(lián)系等模型結(jié)構(gòu)變換為關(guān)系模式。實體間聯(lián)系的變換1:1聯(lián)系的變換

設R是實體型E1和E2之間是1:1聯(lián)系,S和T是E1和E2對應的關(guān)系。我們可以使用兩種方法實現(xiàn)R。第一種方法是通過在S或T中增加有關(guān)信息來表示聯(lián)系R,步驟:T(或S)的主鍵作為外部鍵添入S(或T);R的簡單屬性和復合屬性的簡單子屬性作為簡單屬性添入S(或T)。需要注意的是:如果S和T中至少一個具有關(guān)于R的全域關(guān)聯(lián)約束,則應選擇具有這種約束的關(guān)系型表示R。如果S和T都具有全域關(guān)聯(lián)約束,而且S和T與其他聯(lián)系無關(guān)我們可以通過把S和T合并為一個關(guān)系型來表示R。實體間聯(lián)系的變換可轉(zhuǎn)換為以下關(guān)系模式S(A,B,C,D,H)T(D,E,F(xiàn),G)或:S(A,B,C)T(D,E,F(xiàn),G,A,H)E1ABCE2DFGER11H實體間聯(lián)系的變換第二種方法是建立一個單獨的關(guān)系W來表示R,步驟為:T和S的主鍵作為屬性添入W,它們均可作為W的候選鍵。R的簡單屬性和復合屬性的簡單子屬性作為簡單屬性添入W。如上一個ER圖,可以將聯(lián)系R轉(zhuǎn)化為以下關(guān)系模式:R(A,D,H)實體間聯(lián)系的變換1:N聯(lián)系的變換設R是實體型E1和E2之間是1:N聯(lián)系,S和T是E1和E2對應的關(guān)系。我們可以使用兩種方法實現(xiàn)R。第一種方法不需要建立新關(guān)系。由于T的每個實體至多與S的一個實體相對應,我們選擇T來表示R,步驟為:S的主鍵作為外部鍵添入T;R的簡單屬性和復合屬性的簡單子屬性作為簡單屬性添入T。

溫馨提示

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

評論

0/150

提交評論