數(shù)據(jù)庫(kù)范式設(shè)計(jì)(專題)_第1頁(yè)
數(shù)據(jù)庫(kù)范式設(shè)計(jì)(專題)_第2頁(yè)
數(shù)據(jù)庫(kù)范式設(shè)計(jì)(專題)_第3頁(yè)
數(shù)據(jù)庫(kù)范式設(shè)計(jì)(專題)_第4頁(yè)
數(shù)據(jù)庫(kù)范式設(shè)計(jì)(專題)_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

2024年7月31日第1頁(yè)數(shù)據(jù)庫(kù)范式設(shè)計(jì)專題教學(xué)目標(biāo)教學(xué)重點(diǎn):第一、二、三范式教學(xué)過(guò)程2024年7月31日第2頁(yè)2.3.3范式與規(guī)范化數(shù)據(jù)庫(kù)的設(shè)計(jì)范式是數(shù)據(jù)庫(kù)設(shè)計(jì)所需要滿足的規(guī)范,滿足這些規(guī)范的數(shù)據(jù)庫(kù)是簡(jiǎn)潔的、結(jié)構(gòu)明晰的,同時(shí),不會(huì)發(fā)生插入(insert)、刪除(delete)和更新(update)操作異常。反之則是亂七八糟,不僅給數(shù)據(jù)庫(kù)的編程人員制造麻煩,而且面目可憎,可能存儲(chǔ)了大量不需要的冗余信息。目前關(guān)系數(shù)據(jù)庫(kù)有六種范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、第四范式(4NF)、第五范式(5NF)和第六范式(6NF)。

第一范式(1stNF)在任何一個(gè)關(guān)系數(shù)據(jù)庫(kù)中,第一范式(1NF)是對(duì)關(guān)系模式的基本要求,不滿足第一范式(1NF)的數(shù)據(jù)庫(kù)就不是關(guān)系數(shù)據(jù)庫(kù)。所謂第一范式(1NF)是指數(shù)據(jù)庫(kù)表的每一列都是不可分割的基本數(shù)據(jù)項(xiàng),同一列中不能有多個(gè)值,即實(shí)體中的某個(gè)屬性不能有多個(gè)值或者不能有重復(fù)的屬性。如果出現(xiàn)重復(fù)的屬性,就可能需要定義一個(gè)新的實(shí)體,新的實(shí)體由重復(fù)的屬性構(gòu)成,新實(shí)體與原實(shí)體之間為一對(duì)多關(guān)系。在第一范式(1NF)中表的每一行只包含一個(gè)實(shí)例的信息。簡(jiǎn)而言之,第一范式就是無(wú)重復(fù)的列。BuyerIDCountryCity1142中國(guó)中國(guó)日本美國(guó)北京北京東京紐約………BuyerIDAddress1234中國(guó)北京市

美國(guó)紐約市英國(guó)利物浦日本東京市…

…2第二范式(2NF)第二范式(2NF)是在第一范式(1NF)的基礎(chǔ)上建立起來(lái)的,即滿足第二范式(2NF)必須先滿足第一范式(1NF)。第二范式(2NF)要求數(shù)據(jù)庫(kù)表中的每個(gè)實(shí)例或行必須可以被惟一地區(qū)分。為實(shí)現(xiàn)區(qū)分通常需要為表加上一個(gè)列,以存儲(chǔ)各個(gè)實(shí)例的惟一標(biāo)識(shí)。這個(gè)惟一屬性列被稱為主關(guān)鍵字或主鍵、主碼。Orders字段例子訂單編號(hào)產(chǎn)品編號(hào)訂購(gòu)日期價(jià)格001A0012000-2-3$29.00…

…Orders字段例子訂單編號(hào)訂購(gòu)日期0012000-2-3Products字段例子產(chǎn)品編號(hào)價(jià)格A001$29.003第三范式(3NF)滿足第三范式(3NF)必須先滿足第二范式(2NF)。簡(jiǎn)而言之,第三范式(3NF)要求一個(gè)數(shù)據(jù)庫(kù)表中不能包含已經(jīng)在其它表中存在的非主關(guān)鍵字信息。即,第三范式就是屬性不依賴于其它非主屬性(即表與表之間存儲(chǔ)數(shù)據(jù)獨(dú)立)。Orders字段例子訂單編號(hào)訂購(gòu)日期顧客編號(hào)0012000-2-3AB001顧客姓名Tony…

…Orders字段例子訂單編號(hào)訂購(gòu)日期顧客編號(hào)0012000-2-3AB001…

…規(guī)范化實(shí)例假設(shè)某建筑公司要設(shè)計(jì)一個(gè)數(shù)據(jù)庫(kù)。公司的業(yè)務(wù)規(guī)則概括說(shuō)明如下:公司承擔(dān)多個(gè)工程項(xiàng)目,每一項(xiàng)工程有:工程號(hào)、工程名稱、施工人員等公司有多名職工,每一名職工有:職工號(hào)、姓名、性別、職務(wù)(工程師、技術(shù)員)等公司按照工時(shí)和小時(shí)工資率支付工資,小時(shí)工資率由職工的職務(wù)決定(例如,技術(shù)員的小時(shí)工資率與工程師不同)公司定期制定一個(gè)工資報(bào)表,如圖-1所示規(guī)范化實(shí)例工程號(hào)工程名稱職工號(hào)姓名職務(wù)小時(shí)工資率工時(shí)實(shí)發(fā)工資A1花園大廈1001齊光明工程師6513845.001002李思岐技術(shù)員6016960.001004葛宇宏律師60191140.00小計(jì)2945.00A2立交橋1001齊光明工程師6515975.001003鞠明亮工人5517935.00小計(jì)1910.00A3臨江飯店1002李思岐技術(shù)員60181080.001004葛宇洪技術(shù)員6014840.00小計(jì)1920.00圖-1某公司的工資表規(guī)范化實(shí)例工程號(hào)工程名稱職工號(hào)姓名職務(wù)小時(shí)工資率工時(shí)A1花園大廈1001齊光明工程師6513A1花園大廈1002李思岐技術(shù)員6016A1花園大廈1001齊光明工程師6513A1花園大廈1003鞠明亮工人5517A3臨江飯店1002李思岐技術(shù)員6018A3臨江飯店1004葛宇洪技術(shù)員6014圖-2某公司的項(xiàng)目工時(shí)表規(guī)范化實(shí)例1.表中包含大量的冗余,可能會(huì)導(dǎo)致數(shù)據(jù)異常:更新異常例如,修改職工號(hào)=1001的職務(wù),則必須修改所有職工號(hào)=1001的行添加異常若要增加一個(gè)新的職工時(shí),首先必須給這名職工分配一個(gè)工程?;蛘邽榱颂砑右幻侣毠さ臄?shù)據(jù),先給這名職工分配一個(gè)虛擬的工程。(因?yàn)橹麝P(guān)鍵字不能為空)刪除異常例如,1001號(hào)職工要辭職,則必須刪除所有職工號(hào)=1001的數(shù)據(jù)行。這樣的刪除操作,很可能丟失了其它有用的數(shù)據(jù)規(guī)范化實(shí)例2.采用這種方法設(shè)計(jì)表的結(jié)構(gòu),雖然很容易產(chǎn)生工資報(bào)表,但是每當(dāng)一名職工分配一個(gè)工程時(shí),都要重復(fù)輸入大量的數(shù)據(jù)。這種重復(fù)的輸入操作,很可能導(dǎo)致數(shù)據(jù)的不一致性。一張表描述了多件事情,如圖-3所示。應(yīng)用范式規(guī)范化設(shè)計(jì)工程號(hào)工程名稱職工號(hào)姓名職務(wù)小時(shí)工資率工時(shí)圖-3函數(shù)依賴圖工程信息員工信息項(xiàng)目工時(shí)信息應(yīng)用第二范式規(guī)范化工程號(hào)工程名稱職工號(hào)姓名職務(wù)小時(shí)工資率工程號(hào)職工號(hào)工時(shí)圖-4

應(yīng)用第二范式工程表員工表項(xiàng)目工時(shí)表滿足第三范式嗎?

應(yīng)用第三范式規(guī)范化工程號(hào)工程名稱職工號(hào)姓名職務(wù)職務(wù)小時(shí)工資率工程號(hào)職工號(hào)工時(shí)工程表員工表職務(wù)表工程表鮑依斯-科得范式(BCNF)BCNF:在3NF基礎(chǔ)上,加上主鍵也不能有傳遞依賴規(guī)范化和性能的關(guān)系為滿足某種商業(yè)目標(biāo),數(shù)據(jù)庫(kù)性能比規(guī)范化數(shù)據(jù)庫(kù)更重要通過(guò)在給定的表中添加額外的字段,以大量減少需要從中搜索信息所需的時(shí)間通過(guò)在給定的表中插入計(jì)算列(如成績(jī)總分),以方便查詢進(jìn)行規(guī)范化的同時(shí),還需要綜合考慮數(shù)據(jù)庫(kù)的性能。總結(jié):規(guī)范化的本質(zhì)是提高數(shù)據(jù)獨(dú)立性,解決插入異常、

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論