數(shù)據(jù)庫的設(shè)計

什么是數(shù)據(jù)庫設(shè)計

數(shù)據(jù)庫設(shè)計就是將數(shù)據(jù)庫中的數(shù)據(jù)實(shí)體以及這些數(shù)據(jù)實(shí)體之間的關(guān)系,進(jìn)行規(guī)劃和結(jié)構(gòu)化的過程

設(shè)計數(shù)據(jù)庫的必要性

書庫中創(chuàng)建的數(shù)據(jù)表的結(jié)構(gòu),以及數(shù)據(jù)實(shí)體之間的復(fù)雜關(guān)系時決定數(shù)據(jù)庫系統(tǒng)工作效率的重要因素。

糟糕的數(shù)據(jù)庫設(shè)計具有以下不足

  • 效率低下
  • 更新和檢索數(shù)據(jù)會出現(xiàn)異常

良好的數(shù)據(jù)庫設(shè)計具有以下優(yōu)點(diǎn)

效率高

  • 便于進(jìn)一步擴(kuò)展
  • 使得程序的開發(fā)變得更容易

數(shù)據(jù)庫設(shè)計的步驟

1.需求分析階段

準(zhǔn)確了解與分析用戶需求,是整個設(shè)計過程的基礎(chǔ),也是最困難、最耗費(fèi)時間的階段。

2.概念結(jié)構(gòu)設(shè)計階段

這一階段時整個數(shù)據(jù)庫設(shè)計的關(guān)鍵,通過對用戶需求進(jìn)行綜合、歸納及抽象,形成一個獨(dú)立于具體DBMS的概念模型,同時在這個階段繪制E-R模型圖

3.邏輯結(jié)構(gòu)設(shè)計階段

將邏輯結(jié)構(gòu)轉(zhuǎn)換為為某個DBMS所支持的數(shù)據(jù)模型,并對其進(jìn)行優(yōu)化。

4.數(shù)據(jù)庫物理設(shè)計階段

為邏輯數(shù)據(jù)模型選取一個最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)(包括存儲結(jié)構(gòu)和存取方式)。

5.數(shù)據(jù)庫實(shí)施階段

運(yùn)行DBMS提供的數(shù)據(jù)語言、工具,根據(jù)邏輯思維和物理設(shè)計的結(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)行。在運(yùn)行過程中必須不斷地對其進(jìn)行評價、調(diào)整及修改。

無論數(shù)據(jù)庫的復(fù)雜程度的如何,在進(jìn)行數(shù)據(jù)庫分析時,都需要執(zhí)行收集信息、標(biāo)注實(shí)體標(biāo)識實(shí)體的屬性標(biāo)識實(shí)體的關(guān)系。

收集信息

在創(chuàng)建數(shù)據(jù)庫之前,必須充分理解數(shù)據(jù)庫需要完成的任務(wù)和功能,即存儲那些信息、實(shí)現(xiàn)那些功能。

表示實(shí)體

實(shí)體即對象。表示實(shí)體就是要標(biāo)識對象,實(shí)體一般是名字,一個實(shí)體只描述一件事物,不可重復(fù)描述。

標(biāo)識實(shí)體中的屬性

屬性即對象的特征,最終會稱為表中的列

標(biāo)識實(shí)體之間的關(guān)系

每一個實(shí)體都獨(dú)立描述一件事物。不同類型的信息分類存儲,他們之間不能重復(fù),但是如果需要,數(shù)據(jù)庫引擎可以根據(jù)需要將數(shù)據(jù)組合起來。在數(shù)據(jù)庫設(shè)計中,必須標(biāo)識這些實(shí)體之間的關(guān)系。一般而言,關(guān)系是通過業(yè)務(wù)規(guī)則分析出來的。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容