102關務 資料庫 正規化 - 考試

Table of Contents

[考題] 國考歷屆考題與考題觀念討論(書裡看到的選這個)請附上想法、出處

考題網址:http://ppt.cc/Uwur



很抱歉 有段時間沒碰資料庫 現在做起題目感覺很奇怪

這一題主要想問第四小題BCNF那裡的問題,附上我解的過程



題目:

已知下列表格的功能相依性(Functional Dependencies)如下。請分4 步驟依序完成
正規化的工作:(一)一階正規化 (二)二階正規化 (三)三階正規化
(四) Boyce-Codd 正規化。最後在(四)中說明表格的主鍵(Primary Keys)。

表格

學號 生日 年紀 課號 授課教授 開課系名 主修系名 選課指導 教授成績
112233 80.8.4 22 歲 24680 林教授 工工系 工工系 I教授 88
223344 79.9.1 23 歲 24680 林教授 工工系 運管系 T教授 84
334455 80.5.2 22 歲 13579 李教授 管科系 資財系 F教授 79
112233 80.8.4 22 歲 24680 林教授 工工系 管科系 M教授 88

FD

學號→生日;
生日→年紀;
課號→授課教授;
授課教授→開課系名;
(學號,課號)→成績;
(學號,主修系名)→選課指導教授;
選課指導教授→主修系名;


以下是我的想法 想問有沒有錯誤

(一)第一正規化

已符合第一正規化 屬性定義域為atomic

┌──┐ ┌─┐ ┌──┐ ┌───┐ ┌────┐
│ ↓ │ ↓ │ ↓ │ ↓ ↓ │
學號 生日 年紀 課號 授課教授 開課系名 主修系名 選課指導 教授成績
│ │ │ ↑ ↑
├─────────────────────────┴─────┘ │
└─────────┴─────────────────────────┘

(二)第二正規化

非key值必須完全相依於主key

因此將表格分解如下

學號,生日,年紀

課號,授課教授,開課系名

學號,課號,教授成績

學號,主修系名,選課指導

┌──┐ ┌─┐ ┌──┐ ┌───┐
│ ↓ │ ↓ │ ↓ │ ↓
學號 生日 年紀 課號 授課教授 開課系名

┌──┬───┐ ┌────┐
│ │ ↓ ↓ │
學號 課號 教授成績 學號 主修系名 選課指導
│ │ ↑
└───┴────┘




(三)第三正規化 綠色為主key色

非key值不可遞移相依於主key

┌──┐ ┌──┐
│ ↓ │ ↓
學號 生日 生日 年紀

┌──┐ ┌──┐
│ ↓ │ ↓
課號 授課教授 授課教授 開課系名


┌──┬───┐ ┌────┐
│ │ ↓ ↓ │
學號 課號 教授成績 學號 主修系名 選課指導
│ │ ↑
└───┴────┘


CK(學號,生日,課號,授課教授,主修系名) or

CK(學號,生日,課號,授課教授,選課指導) <===這個CK怎麼看都很怪

(四)Boyce-Codd BCNF

所有決定因素必須皆為候選健

┌────┐
↓ │
學號 主修系名 選課指導
│ │ ↑
└───┴────┘

問題應該出在這

CK(學號,生日,課號,授課教授,主修系名) or
CK(學號,生日,課號,授課教授,選課指導)

這樣是直接符合了嗎?

怎麼看都覺得選課指導 指到 主修系名很奇怪

頭腦燒焦卡在這邊 不知道對不對。 求解惑 囧

--

All Comments

Ula avatarUla2013-08-05
針對你的答案我提出以下看法 首先PK應該針對每個關聯個別去列
Emma avatarEmma2013-08-07
第二 為何第三正規化的時候會有兩組CK(假設是所有關聯的PK)
Rebecca avatarRebecca2013-08-07
第三 BCNF針對 (學號 主修系名 選課指導)PK為學號 主修系名
Dinah avatarDinah2013-08-10
應該拆成 (學號 選課指導)皆為PK (選課指導 主修系名)其中選
Caitlin avatarCaitlin2013-08-12
課指導為PK 大概就以上幾點 有錯煩請指導
Caitlin avatarCaitlin2013-08-13
CK不是只要能完成所有關聯的最小集合嗎? 所以我列的那兩個
我覺得都可以當成ck 也不知道這樣想法有沒有錯
Caitlin avatarCaitlin2013-08-15
至於BCNF 還是覺得很怪 不外乎是因為那個候選健的關係
Joe avatarJoe2013-08-19
如果選課指導 不包含在裡面就要拆了 但我感覺是包含在裡面
Caitlin avatarCaitlin2013-08-23
對了 前面的pk 是我懶得上色 沒上啦 ... 這樣考試會被扣分
不好意思 Sorry ...
Adele avatarAdele2013-08-26
抱歉,我之前的回答錯了。根據唐老師的說法
Zanna avatarZanna2013-08-28
是一樓的a大說的沒錯。主要意義就是讓決定因素皆為CK