資料庫正規化一問 - 高考

Agnes avatar
By Agnes
at 2014-06-26T22:15

Table of Contents

好久沒上來了... 試試手。

首先條件可以看見,母資料集合屬性全部大概是

c s j d p q v

然後c可以決定 s j d p q v

在不考慮其他狀況下,選c當此關聯主鍵沒什麼問題。

然後看到條件說

{J,P}-->C

所以 根據遞移性 jp -> c s j d p q v 成立

這時候 jp 可以為候選鍵

然後看一下另外一個條件

{S,D}-->P

根據遞移性 j s p ->c 也成立

於是 jsp->c s j d p q v 成立

於是jsp 也可以是候選鍵

快速找的時候用沒有被決定又決定別人這種方式不錯,很快

不過立論基礎薄弱,所以我都只用來驗證一下而已

你起碼要告訴別人為什麼這樣推(攤手

所以根據這種狀況

原表相依不滿足3NF

因為jp 決定c,c則可以決定其他所有屬性... 這裡已經有遞移了

所以這樣看起來,原候選鍵值應該有三組

c
jp
jsd

雖然說... 上面好像所有的回文... well, 都沒有把c列進去

但c的確是。別望了主鍵也是從候選鍵裡面選出來的。

所以是我的話,答案大概就是

候選鍵為c, jp, jsd 且主鍵值為c,因為其為單一欄位而非多欄位鍵值組合

然後拆的話...

基本上就拆成關聯一 s d p 一組,主鍵值sd

關聯二 j p c 一組 p 參考關聯一的p 並且成為關聯二的部份鍵

關聯二主鍵當然就用 j p

然後關聯三 就用 c q v 主鍵是c 參考自關聯二的c

這樣拆完應該也滿足BCNF了

一般來說,如果本來就不滿足3NF,我就不會去考慮BCNF

然後可以的話,除非題目有要求不然我也盡量不會去拆BCNF

因為當你去拆BCNF的時候

必然的會有些相依關係從此消失

然後沒有辦法回到lossless join狀態,所以能避免... 還是避免吧(攤手






然後... 寫程式算數學是一回事

資料庫設計是另外一回事

關聯式資料庫的基本概念你大概忽略了

一個好的關聯式資料庫,應該要以關聯主鍵與外鍵的方法讓資料保持最大的一致性

以及最小的重複性

如果拆成jpc 跟csdqv兩個表,看起來似乎沒錯

但實際上,原本sd跟p是有關連性的

你這樣一拆關聯性就消失了

哪天你要新增一個p,結果與之相關的sd 忘記新增,出現錯誤

哪天你要刪除一組sd結果少刪掉與之相關的p... (攤手

記得,沒必要的狀況下,讓相依關係消失是絕對禁止的= =

實務上也是,寧可讓相依關係多一點,反而還可以加快資料庫運作速度

但缺乏某個相依關係,到時候問題會很大。

以上。


※ 引述《fcouple (人生啊…)》之銘言:
: 有幾點在下異議,在此請上榜10次的哥或考友們共同討論。
: 較優候選鍵找法一般都是:「沒有被人決定,且又可決定別人」。
: 但題目中:
: R(C,S,J,D,P,Q,V)
: C-->{S,J,D,P,Q,V}
: {J,P}-->C
: {S,D}-->P
: 很不幸沒有這種候選鍵。所以在下不懂上榜10次的哥
: 一、{J,P}, {S,D.J} 這二組候選鍵是怎麼決定的?
: 二、一定要拆成3個表嗎?可不可以更少些?(照10次哥的候選鍵是要3個沒錯,
: 但我想用最少的表,滿足 BCNF)
: 這二點是在下疑問的地方。
: 在下就題目給的
: C-->{S,J,D,P,Q,V}
: {J,P}-->C
: {S,D}-->P
: 三條決定因素當候選鍵,其中
: C-->{S,J,D,P,Q,V}
: {S,D}-->P
: 這二條因為會拆超過 2 個以上的表,不考慮,故選 {J,P}-->C
: 如此一來
: R1(J, P, C) ............ J,P 為 R1 的 PK, C 為 R2 的 FK
: R2(C, S, D, Q, V) ...... C 為 R2 的 PK 並參考至 R1.C
: (注意,R2中 {S,D}--> P 功能相依因 P 拆走而消失,故 R2 中的 {S,D} 沒有功能)
: 二個表,且滿足 BCNF
: 至於為何要最少表? 在下的理由是:
: 一、如同考數學一樣,方程式能化簡而沒化簡,雖事實上相等沒錯,但給改考卷的人
: 有理由扣分,最少表,同理。
: 二、實際上在開發系統、寫程式時,最少表又滿足正規化,是一般考量。
: (用「一般」這保留字眼是,事實上也有特殊狀況,要看系統需求而定,但一般
: 確實是這樣沒錯)
:  先謝謝指教的人,祝大家高考都上榜!
: : 讓我這個上榜10次的哥來教教你
: : 此題候選鍵為{J,P},{S,D.J}
: : C決定的屬性都是從{J,P}延伸出去的
: : 因此Q,V遞移相依於主鍵{J,P}透過C
: : 因此不為3NF為2NF
: : BCNF後
: : R1{S,D,P} {S,D}為主鍵
: : R2{C,Q,V} C為主鍵
: : R3{S,D,J,C} {S,D,J}為主鍵,{S,D}為外鍵,C為外鍵
: : or
: : R3{J,P,C} {J,P}為主鍵,C為外鍵
: : 打完收工

--
Tags: 高考

All Comments

Michael avatar
By Michael
at 2014-06-29T04:08
好文~ 給推 XD
Michael avatar
By Michael
at 2014-07-01T13:42
謝謝您,講的很詳細,幫十次哥回答得點。
Yuri avatar
By Yuri
at 2014-07-04T20:50
最近再解這題,發現自己也是少算一個,非常感謝

媽媽說全職考生一年考上很正常

Candice avatar
By Candice
at 2014-06-26T21:08
※ 引述《v2605 (皓呆)》之銘言: : 我是今年剛畢業的社會新鮮人。 : 在很多因素考慮下,決定踏入國考之路,目前是全職考生。 : 小女是英文系畢業,對法學知識一無所知,等於一切從頭來。每次上課真的都是???在頭上,硬是聽下去,告訴自己過一陣子會比較熟悉這些法律邏輯。 : 常常聽到補習班老師說國考是一條 ...

媽媽說全職考生一年考上很正常

Iris avatar
By Iris
at 2014-06-26T19:47
※ 引述《v2605 (皓呆)》之銘言: : 我是今年剛畢業的社會新鮮人。 : 在很多因素考慮下,決定踏入國考之路,目前是全職考生。 : 小女是英文系畢業,對法學知識一無所知,等於一切從頭來。每次上課真的都是???在頭上,硬是聽下去,告訴自己過一陣子會比較熟悉這些法律邏輯。 : 常常聽到補習班老師說國考是一條 ...

請問圖行法筆記

Annie avatar
By Annie
at 2014-06-25T15:46
請問現在用圖行法筆記準備土木高考來的及嗎 好緊張阿……………~斯 -- Sent from my Android - ...

99年高考工數的問題

Eden avatar
By Eden
at 2014-06-25T14:31
最近在寫考古題 機率一直是我的弱項 懇請各位幫解惑 ------------------------ 99年高考三級 選擇第17題 兩 連 續 隨 機 變 數 X 、 Y 之結合 機 率 密 度 函 數...............(略) 求P(X+Yandgt;1)=? Y的上下限是 1 ...

99年高考會計-資本化利息

Necoo avatar
By Necoo
at 2014-06-25T14:13
以下是99年高考的會計學 乙公司於x1年6月購買機器設備,符合利息資本化條件, 6月份支出價款如下: 6月1日$1,200,000, 6月10日$3,000,000, 6月15日$800,000, 該機器設備於7月1日安裝完成啟用,乙公司的借款與利息負擔如下: (1)為購買該項機器設備於6月初借款$2,00 ...