Microsoft Office Access 2007

歡迎進入 Access 2007 , Yi 的學習心得

2010年10月29日 星期五

資料表正規化

第十二章
重點整理開始
實體-關係圖與正規化的關係:
正規化理論:就是資料表分割法則,將所有的資料欄位合併成一個大資料表,依循正規化理論所提出的各個步驟,逐步分割,進而形成許多獨立,彼此關聯的小資料表。
正規化的目的:避免資料重複或相互矛盾的情形

資料庫正規化可分為:
  1. 第一階正規化(1NF):第一階正規化是所有正規化的基礎
    資料表符合以下條件,即是符合『第一階正規化的形式(First Normal Form,1NF)』
    a.資料表中有主鍵,而其他所有的欄位都相依於主鍵
    b.每個欄位中都只儲存單一值
    c.資料表中沒有意義相同的多個欄位
    若未符合以上的條件,則稱為『非正規化』的資料表
  2. 第二階正規化(2NF):在完成第一階正規化時,會發現輸入過多的重複資料,不但浪費儲存空間,更容易造成新增、刪除或更新資料時的異常狀況。
    資料表符合以下條件,即是符合『第二階正規化的形式(Second Normal Form,2NF)』
    a.符合1NF的格式
    b.各欄位與主鍵間沒有『部分相依』的關係
      『部分相依』只有在主鍵是由多個欄位組成時才會發生,它是指某些欄位只與主鍵中的部分欄位有相依性,而與另一部份的欄位沒有相依性。會造成新增資料時,資料將無法輸入(因為主鍵中的欄位值是不允許有空白的,但此時根本沒有資料可輸入);更改資料時,必須搜尋整個資料庫並一一更改;刪除資料時,將該筆記錄刪除資料也跟著消失等問題。同時也會造成資料重複出現的問題,而且也容易因疏忽而造成資料不一致的錯誤。
  3. 第三階正規化(3NF):
    a.符合2NF的格式
    b.各欄位與主鍵間沒有『間接相依』的關係
      『間接相依』是指在二個欄位間並非直接相依,而是借助第三個欄位來達成資料相依的關係。要找出各欄位與主鍵間的間接相依性,就是看看資料表中有沒有與主鍵無關的相依性存在
  4. Boyce-Codd正規化(BCNF):資料表中的主鍵只有單一欄位組成,則符合第三階正規化的資料表,亦符合Boyce-Codd正規化,但資料表的主鍵由多個欄位組成,則資料表只要符合以下條件,即是符合『Boyce-Codd正規化的形式(Boyce-Codd Normal Form,BCNF)』
    a.符合3NF的格式
    b.主鍵中的各欄位不可以相依於其他非主鍵的欄位
    PS: Boyce-Codd正規化亦稱為廣義的3NF。叫3NF多規範了主鍵由多個欄位組成的資料表
正規化的另類思考:還需考慮系統的需求自行作一些變化,例如以下兩種情況
  • 不必要的分割:正規化的工作有時不必做得非常徹底,因為過多的資料表可能會降低系統的效能
  • 人工的分割:為了增加資料處理的效率,可將已經符合BCNF的資料表再做分割
實力評量
實力耶
選擇題
  1. (1): 第一階正規化(1NF):資料表中有主鍵,而其他所有的欄位都相依於主鍵
  2. (1):第一階正規化(1NF):資料表中有主鍵,而其他所有的欄位都相依於主鍵
  3. (2):第二階正規化(2NF):各欄位與主鍵間沒有『部分相依』的關係
  4. (4):Boyce-Codd正規化(BCNF):主鍵中的各欄位不可以相依於其他非主鍵的欄位
  5. (2):『間接相依』是指在二個欄位間並非直接相依,而是借助第三個欄位來達成資料相依的關係
填充題
  1. 正規化
  2. 意義相同;間接相依
問答題
  1. 第一階正規化(1NF):a.資料表中有主鍵,而其他所有的欄位都相依於主鍵b.每個欄位中都只儲存單一值c.資料表中沒有意義相同的多個欄位;第二階正規化(2NF):a.符合1NF的格式b.各欄位與主鍵間沒有『部分相依』的關係;第三階正規化(3NF): a.符合2NF的格式b.各欄位與主鍵間沒有『間接相依』的關係;Boyce-Codd正規化(BCNF):a.符合3NF的格式b.主鍵中的各欄位不可以相依於其他非主鍵的欄位
實作題

沒有留言:

張貼留言