
104年公務人員高等考試一級暨二級考試試題
代號:21840
等 別: 高考二級
類 科: 資訊處理
科 目: 高等資料庫設計
考試時間: 2小時 座號:
※注意:
禁止使用電子計算器。
不必抄題,作答時請將試題題號及答案依照順序寫在試卷上,於本試題上作答者,不予計分。
請以黑色鋼筆或原子筆在申論試卷上作答。
全一頁
一、考慮以下的學生修課資料庫綱要(database schema)
學生(學號,姓名,系別)
老師(老師代號,姓名,性別)
課程(課程代號,課名,上課地點)
修習(學號,課程代號,分數)
//學號與課程代號為參考學生與課程關聯的外鍵(foreign key)
開設(老師代號,課程代號)
//老師代號與課程代號為參考老師與課程關聯的外鍵
請將下列需求轉成 SQL 語句(每小題 5分,共 20 分)
列出修習王大明老師開授課程的所有學生學號與姓名。
列出所有資工系學生的學號與姓名。
列出平均分數大於 60 分的課程代號與課名。
列出修課人數小於 30 人的課程代號與課名。
二、在資料庫的設計時,lossless-join decomposition 與dependency preservation 是關聯
(relation)切割中兩個重要的特性,請說明這兩個特性為何,以及如何判斷。(25 分)
三、資料庫的正規化共可分為第一階正規化(first normal form)、第二階正規化(second
normal form)、第三階正規化(third normal form)、BCNF(Boyce-Codd Normal
Form)、第四階正規化以及第五階正規化等多個階段;請說明正規化的目的為何,
以及何謂第一階正規化、第二階正規化、第三階正規化與 BCNF。(30 分)
四、請寫出 nested-loop join 與block nested-loop join 的方法步驟,並比較其優缺點。(25 分)