調查局三等申論題
108年
[資訊科學組] 資料庫應用
第 一 題
📖 題組:
在關聯式資料庫(relational database)軟體所提供的功能中,有些定義可以讓系統協助檢查資料的一致性(consistency),有些定義則可以提升查詢處理的效率。假設要在資料庫系統中建立兩個表格,其中:學生表格用以記錄每個學生的基本資料,包含學號(ID)、姓名(name)和主修系別(dname);系所表格用以記錄每個系的基本資料,包含系名(dname)、系館名稱(building)和系主任(chair)。此二表格的定義如下所示: student (ID, name, dname) department (dname, building, chair)
在關聯式資料庫(relational database)軟體所提供的功能中,有些定義可以讓系統協助檢查資料的一致性(consistency),有些定義則可以提升查詢處理的效率。假設要在資料庫系統中建立兩個表格,其中:學生表格用以記錄每個學生的基本資料,包含學號(ID)、姓名(name)和主修系別(dname);系所表格用以記錄每個系的基本資料,包含系名(dname)、系館名稱(building)和系主任(chair)。此二表格的定義如下所示: student (ID, name, dname) department (dname, building, chair)
📝 此題為申論題,共 3 小題
小題 (一)
請問你贊同把屬性 ID 定義為 student 表格的主鍵(primary key)嗎?請詳述你贊同或不贊同的原因。(10 分)
思路引導 VIP
本題測驗關聯式資料庫的主鍵(Primary Key)概念與實體完整性。解題時應先明確表達「贊同」的立場,接著從主鍵的特性(唯一性、非空值、穩定性)出發,結合「學號」的實務情境進行邏輯推演。
小題 (二)
假設屬性 dname 已經被定義為 department 表格的主鍵,你贊同把 student 表格中的屬性 dname 定義為外來鍵(foreign key)參照到 department 表格嗎?請詳述你贊同或不贊同的原因。(10 分)
思路引導 VIP
看到「是否贊同定義為外來鍵」,應立即聯想到關聯式資料庫的核心概念:「參照完整性(Referential Integrity)」。解題時需先明確給出「贊同」的結論,接著從資料一致性(防止孤兒記錄)、資料異動防護(ON UPDATE/DELETE 聯級規則)、查詢最佳化,以及反映真實業務邏輯等四大維度進行條理作答。
小題 (三)
你贊同把屬性 ID 定義為索引(index)嗎?請說明你贊同或不贊同的原因。(10 分)
思路引導 VIP
考生看到此題應先判斷「ID(學號)」在學生表格中的角色(通常為主鍵 Primary Key)。接著從索引的兩大核心功能切入:一是「維持資料一致性(唯一性約束)」,二是「提升查詢效率(加速搜尋與關聯)」。最後可簡略提及索引的維護成本(空間與寫入代價),並以成本效益衡量作為結論,使論述更加完整。