免費開始練習
moea_joint_essay 108年 [統計資訊] 資料庫及資料探勘、程式設計

第 二 題

📖 題組:
在設計資料庫的過程中,正規化(Normalization)是建構資料模式所運用的一種技術,其目的是為了降低資料的重覆性與避免更新異常的情況發生。故於正規化的過程中,常將原先關聯表格的所有資料進行分解(Decomposition),試回答下列問題:(15 分)
📝 此題為申論題,共 2 小題

小題 (二)

請針對下方表格,列出無損分解(Lossless Decomposition)的 BCNF (Boyce-Codd Normal Form)型式:(13 分)
題目圖片

思路引導 VIP

先找出給定表格的主鍵與功能相依性 (FDs),然後檢查是否違反 BCNF (所有 FD 的決定因子都必須是 Candidate Key)。有違反則進行分解,直到所有表格都符合 BCNF。

🤖
AI 詳解
AI 專屬家教

步驟一:找出原始表格 R(cID, cName, tID, tName, sID, sName, score) 的功能相依性 (Functional Dependencies, FD)。 從資料語意可推斷:

  1. cID -> cName

小題 (一)

請比較有損分解(Lossy Decomposition)與無損分解(Lossless Decomposition)之差異。(2分)
題目圖片

思路引導 VIP

說明有損分解與無損分解在關聯代數 Natural Join 之後是否能還原原有關聯的差異。

🤖
AI 詳解
AI 專屬家教

無損分解(Lossless Decomposition)指的是將一個原有的關聯表分解成兩個或多個較小的關聯表後,利用自然連接(Natural Join)將這些分解的表格合併,能夠完全且準確地還原成原來的關聯表,不會遺失任何資料,也不會產生多餘的假性資料(Spurious Tuples)。 有損分解(Lossy Decomposition)則是在將分解後的關聯表自然連接起來時,無法正確還原原表格,可能會產生假性資料(多出原表沒有的資料列),導致資料意義混淆或遺失原始關聯性。

🏷️ 相關主題

關聯式資料庫查詢與SQL語法應用
查看更多「[統計資訊] 資料庫及資料探勘、程式設計」的主題分類考古題