數(shù)據(jù)庫設(shè)計(jì)的基本步驟
創(chuàng)新互聯(lián)專注于金溪企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,購物商城網(wǎng)站建設(shè)。金溪網(wǎng)站建設(shè)公司,為金溪等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站制作,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
按照規(guī)范設(shè)計(jì)的方法,考慮數(shù)據(jù)庫及其應(yīng)用系統(tǒng)開發(fā)全過程,將數(shù)據(jù)庫設(shè)計(jì)分為以下6個(gè)階段
1.需求分析
2.概念結(jié)構(gòu)設(shè)計(jì)
3.邏輯結(jié)構(gòu)設(shè)計(jì)
4.物理結(jié)構(gòu)設(shè)計(jì)
5.數(shù)據(jù)庫實(shí)施
6.數(shù)據(jù)庫的運(yùn)行和維護(hù)
在數(shù)據(jù)庫設(shè)計(jì)過程中,需求分析和概念設(shè)計(jì)可以獨(dú)立于任何數(shù)據(jù)庫管理系統(tǒng)進(jìn)行,邏輯設(shè)計(jì)和物理設(shè)計(jì)與選用的DAMS密切相關(guān)。
1.需求分析階段(常用自頂向下)
進(jìn)行數(shù)據(jù)庫設(shè)計(jì)首先必須準(zhǔn)確了解和分析用戶需求(包括數(shù)據(jù)與處理)。需求分析是整個(gè)設(shè)計(jì)過程的基礎(chǔ),也是最困難,最耗時(shí)的一步。需求分析是否做得充分和準(zhǔn)確,決定了在其上構(gòu)建數(shù)據(jù)庫大廈的速度與質(zhì)量。需求分析做的不好,會(huì)導(dǎo)致整個(gè)數(shù)據(jù)庫設(shè)計(jì)返工重做。
需求分析的任務(wù),是通過詳細(xì)調(diào)查現(xiàn)實(shí)世界要處理的對(duì)象,充分了解原系統(tǒng)工作概況,明確用戶的各種需求,然后在此基礎(chǔ)上確定新的系統(tǒng)功能,新系統(tǒng)還得充分考慮今后可能的擴(kuò)充與改變,不僅僅能夠按當(dāng)前應(yīng)用需求來設(shè)計(jì)。
調(diào)查的重點(diǎn)是,數(shù)據(jù)與處理。達(dá)到信息要求,處理要求,安全性和完整性要求。
分析方法常用SA(Structured Analysis) 結(jié)構(gòu)化分析方法,SA方法從最上層的系統(tǒng)組織結(jié)構(gòu)入手,采用自頂向下,逐層分解的方式分析系統(tǒng)。
數(shù)據(jù)流圖表達(dá)了數(shù)據(jù)和處理過程的關(guān)系,在SA方法中,處理過程的處理邏輯常常借助判定表或判定樹來描述。在處理功能逐步分解的同事,系統(tǒng)中的數(shù)據(jù)也逐級(jí)分解,形成若干層次的數(shù)據(jù)流圖。系統(tǒng)中的數(shù)據(jù)則借助數(shù)據(jù)字典(data dictionary,DD)來描述。數(shù)據(jù)字典是系統(tǒng)中各類數(shù)據(jù)描述的集合,數(shù)據(jù)字典通常包括數(shù)據(jù)項(xiàng),數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)流,數(shù)據(jù)存儲(chǔ),和處理過程5個(gè)階段。
2.概念結(jié)構(gòu)設(shè)計(jì)階段(常用自底向上)
概念結(jié)構(gòu)設(shè)計(jì)是整個(gè)數(shù)據(jù)庫設(shè)計(jì)的關(guān)鍵,它通過對(duì)用戶需求進(jìn)行綜合,歸納與抽象,形成了一個(gè)獨(dú)立于具體DBMS的概念模型。
設(shè)計(jì)概念結(jié)構(gòu)通常有四類方法:
自頂向下。即首先定義全局概念結(jié)構(gòu)的框架,再逐步細(xì)化。
自底向上。即首先定義各局部應(yīng)用的概念結(jié)構(gòu),然后再將他們集成起來,得到全局概念結(jié)構(gòu)。
逐步擴(kuò)張。首先定義最重要的核心概念結(jié)構(gòu),然后向外擴(kuò)張,以滾雪球的方式逐步生成其他的概念結(jié)構(gòu),直至總體概念結(jié)構(gòu)。
混合策略。即自頂向下和自底向上相結(jié)合。
3.邏輯結(jié)構(gòu)設(shè)計(jì)階段(E-R圖)
邏輯結(jié)構(gòu)設(shè)計(jì)是將概念結(jié)構(gòu)轉(zhuǎn)換為某個(gè)DBMS所支持的數(shù)據(jù)模型,并將進(jìn)行優(yōu)化。
在這階段,E-R圖顯得異常重要。大家要學(xué)會(huì)各個(gè)實(shí)體定義的屬性來畫出總體的E-R圖。
各分E-R圖之間的沖突主要有三類:屬性沖突,命名沖突,和結(jié)構(gòu)沖突。
E-R圖向關(guān)系模型的轉(zhuǎn)換,要解決的問題是如何將實(shí)體性和實(shí)體間的聯(lián)系轉(zhuǎn)換為關(guān)系模式,如何確定這些關(guān)系模式的屬性和碼。
4.物理設(shè)計(jì)階段
物理設(shè)計(jì)是為邏輯數(shù)據(jù)結(jié)構(gòu)模型選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)(包括存儲(chǔ)結(jié)構(gòu)和存取方法)。
首先要對(duì)運(yùn)行的事務(wù)詳細(xì)分析,獲得選擇物理數(shù)據(jù)庫設(shè)計(jì)所需要的參數(shù),其次,要充分了解所用的RDBMS的內(nèi)部特征,特別是系統(tǒng)提供的存取方法和存儲(chǔ)結(jié)構(gòu)。
常用的存取方法有三類:1.索引方法,目前主要是B+樹索引方法。2.聚簇方法(Clustering)方法。3.是HASH方法。
5.數(shù)據(jù)庫實(shí)施階段
數(shù)據(jù)庫實(shí)施階段,設(shè)計(jì)人員運(yùn)營DBMS提供的數(shù)據(jù)庫語言(如sql)及其宿主語言,根據(jù)邏輯設(shè)計(jì)和物理設(shè)計(jì)的結(jié)果建立數(shù)據(jù)庫,編制和調(diào)試應(yīng)用程序,組織數(shù)據(jù)入庫,并進(jìn)行試運(yùn)行。
6.數(shù)據(jù)庫運(yùn)行和維護(hù)階段
數(shù)據(jù)庫應(yīng)用系統(tǒng)經(jīng)過試運(yùn)行后,即可投入正式運(yùn)行,在數(shù)據(jù)庫系統(tǒng)運(yùn)行過程中必須不斷地對(duì)其進(jìn)行評(píng)價(jià),調(diào)整,修改。
這個(gè)就需要先理清程序的功能流程,然后再按照這個(gè)流程來設(shè)計(jì)數(shù)據(jù)庫表。
member 數(shù)據(jù)表,保存會(huì)員信息。
tiezi 保存會(huì)員發(fā)布的發(fā)帖信息。
pinglun1 保存會(huì)員評(píng)論的信息
pinglun2 保存會(huì)員回復(fù)評(píng)論的信息
六個(gè)主要步驟:
1、需求分析
2、概念設(shè)計(jì)
3、邏輯結(jié)構(gòu)設(shè)計(jì)
4、物理結(jié)構(gòu)設(shè)計(jì)
5、系統(tǒng)實(shí)施
6、運(yùn)行維護(hù)
字?jǐn)?shù)限制,只能列個(gè)大綱了
(1)需求分析階段:需求收集和分析,得到數(shù)據(jù)字典和數(shù)據(jù)流圖。
(2)概念結(jié)構(gòu)設(shè)計(jì)階段:對(duì)用戶需求綜合、歸納與抽象,形成概念模型,用E-R圖表示。
(3)邏輯結(jié)構(gòu)設(shè)計(jì)階段:將概念結(jié)構(gòu)轉(zhuǎn)換為某個(gè)DBMS所支持的數(shù)據(jù)模型。
(4)數(shù)據(jù)庫物理設(shè)計(jì)階段:為邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)。
(5)數(shù)據(jù)庫實(shí)施階段:建立數(shù)據(jù)庫,編制與調(diào)試應(yīng)用程序,組織數(shù)據(jù)入庫,程序試運(yùn)行。
(6)數(shù)據(jù)庫運(yùn)行和維護(hù)階段:對(duì)數(shù)據(jù)庫系統(tǒng)進(jìn)行評(píng)價(jià)、調(diào)整與修改。
數(shù)據(jù)庫的設(shè)計(jì)過程大致可分為以下六個(gè)階段:
1. 需求分析階段
需求收集和分析,結(jié)果得到數(shù)據(jù)字典描述的數(shù)據(jù)需求(和數(shù)據(jù)流圖描述的處理需求)。
2. 概念結(jié)構(gòu)設(shè)計(jì)階段
通過對(duì)用戶需求進(jìn)行綜合、歸納與抽象,形成一個(gè)獨(dú)立于具體DBMS的概念模型,可以用E-R圖表示。
3. 邏輯結(jié)構(gòu)設(shè)計(jì)階段
將概念結(jié)構(gòu)轉(zhuǎn)換為某個(gè)DBMS所支持的數(shù)據(jù)模型(例如關(guān)系模型),并對(duì)其進(jìn)行優(yōu)化。
4. 數(shù)據(jù)庫物理設(shè)計(jì)階段
為邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)(包括存儲(chǔ)結(jié)構(gòu)和存取方法)。
5. 數(shù)據(jù)庫實(shí)施階段
運(yùn)用DBMS提供的數(shù)據(jù)語言(例如SQL)及其宿主語言(例如C),根據(jù)邏輯設(shè)計(jì)和物理設(shè)計(jì)的結(jié)果建立數(shù)據(jù)庫,編制與調(diào)試應(yīng)用程序,組織數(shù)據(jù)入庫,并進(jìn)行試運(yùn)行。
6. 數(shù)據(jù)庫運(yùn)行和維護(hù)階段
數(shù)據(jù)庫應(yīng)用系統(tǒng)經(jīng)過試運(yùn)行后即可投入正式運(yùn)行。在數(shù)據(jù)庫系統(tǒng)運(yùn)行過程中必須不斷地對(duì)其進(jìn)行評(píng)價(jià)、調(diào)整與修改。
數(shù)據(jù)庫設(shè)計(jì)包括六個(gè)主要步驟:
1、需求分析:了解用戶的數(shù)據(jù)需求、處理需求、安全性及完整性要求;
2、概念設(shè)計(jì):通過數(shù)據(jù)抽象,設(shè)計(jì)系統(tǒng)概念模型,一般為E-R模型;
3、邏輯結(jié)構(gòu)設(shè)計(jì):設(shè)計(jì)系統(tǒng)的模式和外模式,對(duì)于關(guān)系模型主要是基本表和視圖;
4、物理結(jié)構(gòu)設(shè)計(jì):設(shè)計(jì)數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)和存取方法,如索引的設(shè)計(jì);
5、系統(tǒng)實(shí)施:組織數(shù)據(jù)入庫、編制應(yīng)用程序、試運(yùn)行;
6、運(yùn)行維護(hù):系統(tǒng)投入運(yùn)行,長期的維護(hù)工作。