一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

數(shù)據(jù)庫設(shè)計 Step by Step (1)

  系列的第一講我們先來回答下面幾個問題image  數(shù)據(jù)庫是大樓的根基

  大多數(shù)程序員都很急切,在了解基本需求之后希望很快的進(jìn)入到編碼階段(可能只有產(chǎn)出代碼才能反映工作量),對于數(shù)據(jù)庫設(shè)計思考得比較少。

  這給系統(tǒng)留下了許多隱患。許多軟件系統(tǒng)的問題,如:輸出錯誤的數(shù)據(jù),性能差或后期維護(hù)繁雜等,都與前期數(shù)據(jù)庫設(shè)計有著密切的關(guān)系。到了這個時候再想修改數(shù)據(jù)庫設(shè)計或進(jìn)行優(yōu)化等同于推翻重來。

  我經(jīng)常把軟件開發(fā)比作汽車制造。汽車制造會經(jīng)過圖紙設(shè)計,模型制作,樣車制造,小批量試生產(chǎn),最后是批量生產(chǎn)等步驟。整個過程環(huán)環(huán)相扣,后一過程是建立在前一過程正確的前提基礎(chǔ)之上的。如果在圖紙設(shè)計階段發(fā)現(xiàn)了一個紕漏,我們可以重新進(jìn)行圖紙設(shè)計,如果到了樣車制造階段發(fā)現(xiàn)這個錯誤,那么我們就要把從圖紙設(shè)計到樣車制造的階段重來,越到后面發(fā)現(xiàn)設(shè)計上的問題,所付出的代價越大,修改的難度也越大。

  數(shù)據(jù)庫是整個應(yīng)用的根基,沒有堅實的根基,整個應(yīng)用也就岌岌可危了。

  強(qiáng)大的數(shù)據(jù)庫面對不良設(shè)計也無能為力

  現(xiàn)代數(shù)據(jù)庫管理系統(tǒng)(DBMS)提供了方便的圖形化界面工具,通過這些工具可以很方便的創(chuàng)建表、定義列,但我們設(shè)計出的結(jié)構(gòu)好嗎?

  關(guān)系數(shù)據(jù)庫有許多非常好的特性,但設(shè)計不當(dāng)會使這些特性部分或完全的喪失。

  我們來看看以下幾個數(shù)據(jù)庫不良設(shè)計造成的場景:

  1. 數(shù)據(jù)一致性的喪失

  一個訂單管理系統(tǒng),維護(hù)著客戶和客戶下的訂單信息。使用該系統(tǒng)的用戶在接到客戶修改收貨地址的電話后,在系統(tǒng)的客戶信息頁面把該客戶的收貨地址進(jìn)行了修改,但原先該客戶的訂單還是送錯了地址。

  2. 數(shù)據(jù)完整性的喪失

  公司戰(zhàn)略轉(zhuǎn)移,準(zhǔn)備撤出某地區(qū)。系統(tǒng)操作人員順手把該地區(qū)的配置信息在系統(tǒng)中進(jìn)行刪除,系統(tǒng)提示刪除成功。隨后問題就來了,客服人員發(fā)現(xiàn)該地區(qū)的歷史訂單頁面一打開就出錯。

  3. 性能的喪失

  一個庫存管理系統(tǒng),倉庫管理員使用該系統(tǒng)記錄每一筆進(jìn)出貨情況,并能查看當(dāng)前各貨物的庫存情況。在系統(tǒng)運行幾個月后,倉庫管理員發(fā)現(xiàn)打開當(dāng)前庫存頁面變得非常慢,而且整個趨勢是越來越慢。

  上面這些場景都是由于數(shù)據(jù)庫設(shè)計不當(dāng)造成的,根源包括:設(shè)計時引入了冗余字段,沒有設(shè)計合理的約束,對性能沒有進(jìn)行充足設(shè)計等,上面的例子也只是滄海一粟。

image  數(shù)據(jù)庫平臺無關(guān)性

  我在這個系列博客里討論的數(shù)據(jù)庫設(shè)計不針對任何一個關(guān)系數(shù)據(jù)庫產(chǎn)品。無論你使用的是Oracle,SQL Server,Sybase,亦或是開源數(shù)據(jù)庫如:MySQL,SQLite等,都可以用來實踐我們這里討論的設(shè)計方法和設(shè)計理念,設(shè)計是這個系列博文的核心和靈魂。

  注:在文中我會選用一個數(shù)據(jù)庫產(chǎn)品來進(jìn)行演示,大家可以選用自己熟悉的數(shù)據(jù)庫產(chǎn)品來實驗。本文最后會給出一些免費數(shù)據(jù)庫產(chǎn)品的鏈接,大家可以下載學(xué)習(xí)。

  一起學(xué)習(xí)共同進(jìn)步

  無論你是數(shù)據(jù)庫設(shè)計師,應(yīng)用架構(gòu)師,軟件工程師,數(shù)據(jù)庫管理員(DBA),軟件項目經(jīng)理,軟件測試工程師等項目組成員,都能從該系列博文中有所收獲。大家一起討論,共同進(jìn)步。

  內(nèi)容涉及領(lǐng)域

  我對這一系列博文現(xiàn)在的設(shè)想是涉及數(shù)據(jù)庫設(shè)計的整個過程。從需求分析開始,到數(shù)據(jù)庫建模(概念數(shù)據(jù)建模),進(jìn)行范式化,直至轉(zhuǎn)化為SQL語句。

image

------------------------------------------------------------
[WebSites]
MyBlog
=http://www.cnblogs.com/DBFocus

 [Directorys]
Image
=E:/DBFocus Project/Img
Text
=E:/DBFocus Project/Documents
Data
=E:/DBFocus Project/DB
------------------------------------------------------------

it知識庫數(shù)據(jù)庫設(shè)計 Step by Step (1),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 99热国产精品 | 一级美女| 欧美日韩亚洲二区在线 | 婷婷精品视频 | 小毛片| 久久一区二区精品 | 国产精品久久久久久久久岛 | 亚洲国产成人精品91久久久 | 成人在线免费视频观看 | 亚洲一区二区三区四区在线 | 久久性妇女精品免费 | www.欧美.com| 亚洲欧美婷婷 | 在线a亚洲视频播放在线观看 | 日韩狠狠操 | 国产精品一区二区久久精品涩爱 | 久久久这里只有精品加勒比 | 日韩色视 | 久热精品6 | 免费在线看黄 | 日韩美女色高清在线看 | 亚洲精品欧美 | 视频在线国产 | 国产精品无内丝袜高跟鞋 | 亚洲视频网站在线观看 | 成人免费视频网站 | 怡红院成人网 | 亚洲福利视频一区二区三区 | 男人操女人免费视频 | 韩国免费毛片在线看 | 一区二区三区四区免费视频 | 色呦呦网站入口 | 另类视频色综合 | 国产精品一区不卡 | 91亚洲精品色午夜麻豆 | 波多野结衣亚洲一区 | 久久亚洲精品中文字幕二区 | 日本精品久久 | 亚洲美女一级毛片 | 久久婷婷色| 丁香视频在线观看播放 |