boyce-codd正規(guī)化的規(guī)則_第1頁
已閱讀1頁,還剩26頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、資料正規(guī)化,何謂正規(guī)化正規(guī)化的步驟欄位相依的用意正規(guī)化的另類思考,實(shí)體 - 關(guān)係圖與正規(guī)化的關(guān)係,資料表的正規(guī)化理論 (Normalization Theory) 其實(shí)是一套資料表分割的法則。正規(guī)化的目的, 則是要避免資料重複或相互矛盾的情形, 並使資料庫在使用時(shí)能更有效率、更容易維護(hù)。,資料庫的正規(guī)化,資料庫的正規(guī)化共可分為 1NF (Normal Form)、2NF、3NF、BCNF (Boyce-Codd Normal F

2、orm)、4NF、5NF 等多個(gè)階段, 不過對於一般資料庫設(shè)計(jì)來說, 通常只需要執(zhí)行到 BCNF 即可, 而其他更高階的正規(guī)化只有在特殊的情況下才用得到。在資料表正規(guī)化的過程 (1NF 到 BCNF) 中, 每個(gè)階段都是以欄位的相依性, 做為分割資料表的依據(jù)之一。,資料庫的正規(guī)化,欄位相依,在一個(gè)資料表中, 若乙欄位的值必須搭配甲欄位才有意義, 則我們說『乙欄位相依於甲欄位』。舉例來說, 一個(gè)員工資料表如下:,欄位相依,正規(guī)化基本概念

3、,正規(guī)化的過程是循序漸進(jìn)的, 資料表必須在滿足第一階正規(guī)化的條件之下, 才能進(jìn)行第二階正規(guī)化。也就是說, 第二階正規(guī)化必須建立在符合第一階正規(guī)化的資料表上, 依此類推。而第一階正規(guī)化正是所有正規(guī)化的基礎(chǔ)。,第一階正規(guī)化的規(guī)則,如果資料表符合以下條件, 我們就說這個(gè)資料表符合第一階正規(guī)化的形式(First Normal Form, 簡稱 1NF):資料表中有主鍵, 而其他所有的欄位都相依於主鍵。每個(gè)欄位中都只有儲(chǔ)存單一值, 例如姓名欄

4、位中不能存放 2 個(gè)人的姓名。資料表中沒有意義相同的多個(gè)欄位, 例如姓名1、姓名2...等重複的欄位。,未符合 1NF 資料表的缺點(diǎn),學(xué)號(hào)、學(xué)生姓名及成績欄的長度無法確定降低存取資料的效率,建構(gòu) 1NF 資料表的方法,對於不具第一階正規(guī)化形式的資料表, 我們可將重複的資料項(xiàng)分別儲(chǔ)存到不同的記錄中, 並加上適當(dāng)?shù)闹麈I:,第二階正規(guī)化 (2NF),在執(zhí)行符合一階正規(guī)化的資料表時(shí), 應(yīng)該會(huì)發(fā)覺:我們輸入了許多重複的資料。如此, 不但浪費(fèi)儲(chǔ)

5、存的空間, 更容易造成新增、刪除或更新資料時(shí)的異常狀況。所以, 我們必須進(jìn)行第二階正規(guī)化, 來消除這些問題。,第二階正規(guī)化的規(guī)則,如果資料表符合以下的條件, 我們說這個(gè)資料表符合第二階正規(guī)化的形式 (Second Normal Form, 簡稱 2NF):符合 1NF 的格式。各欄位與主鍵間沒有部分相依的關(guān)係。,第二階正規(guī)化的規(guī)則,部分相依的問題,新增資料時(shí):若有一個(gè)新來的轉(zhuǎn)學(xué)生『吳技安』, 但還沒有選修任何課程, 那麼它的資料將無

6、法輸入。更改資料時(shí):當(dāng)我們想要將課程名稱『資料庫系統(tǒng)』更改為『資料庫管理』時(shí), 必須搜尋整個(gè)資料庫並一一更改, 非常沒有效率。刪除資料時(shí):由於陳鐵雄只修了『CS101』一門課, 如果將該筆記錄刪除, 那麼陳鐵雄的資料也就跟著消失了。,建構(gòu) 2NF 資料表的方法,要除去資料表中的部分相依性, 只需將部份相依的欄位分割成另外的資料表即可。例如我們將修課資料表分割成 3 個(gè)較小的資料表 (加 "*" 號(hào)的欄位為主鍵):

7、,建構(gòu) 2NF 資料表的方法,第三階正規(guī)化 (3NF),經(jīng)過了第二階正規(guī)化後的資料表, 其實(shí)還存在一些問題:在課程資料表中, 如果新來了一位教師『甄蒡』, 在尚未安排他教授的課程之前, 我們無法輸入該教師的資料。若要?jiǎng)h除影像處理的課程, 勢必會(huì)將教授該門課程的教師一併刪除。若要更改影像處理課程的名稱, 則必須同時(shí)更改多筆記錄, 造成不便。,第三階正規(guī)化的規(guī)則,如果資料表符合以下條件, 我們就說這個(gè)資料表符合第三階正規(guī)化的形式 (T

8、hird Normal Form, 簡稱 3NF):符合 2NF 的格式。各欄位與主鍵間沒有間接相依的關(guān)係。,第三階正規(guī)化的規(guī)則,建構(gòu) 3NF 資料表的方法,要除去資料表中的間接相依性, 其方法和除去部分相依性完全相同。例如課程資料表可再分割成兩個(gè)資料表:,與直覺式的分割技巧做比較,Boyce-Codd 正規(guī)化 (BCNF),對於大部分資料庫來說, 通常只需要執(zhí)行到第三階段的正規(guī)化即足夠了。如果資料表的主鍵是由多個(gè)欄位組成的, 則必

9、須再執(zhí)行 Boyce-Codd 正規(guī)化。,Boyce-Codd 正規(guī)化的規(guī)則,如果資料表的主鍵只由單一欄位組成, 則符合第三階正規(guī)化的資料表, 亦符合 Boyce-Codd 正規(guī)化。若資料表的主鍵由多個(gè)欄位組成, 則資料表只要符合以下條件, 我們就說這個(gè)資料表符合Boyce-Codd 正規(guī)化的形式 (Boyce-Codd Normal Form, 簡稱 BCNF):符合 2NF 的格式。各欄位與主鍵沒有間接相依的關(guān)係。主鍵中的各

溫馨提示

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

評論

0/150

提交評論