lawpalyer logo

資訊處理 113 年高等資料庫設計考古題

民國 113 年(2024)資訊處理「高等資料庫設計」考試題目,共 4 題 | 資料來源:考選部

0 題選擇題 + 4 題申論題

開發一個資料庫的二個主要步驟為邏輯資料庫設計(logical database design)和實體資料庫設計(physical database design)。 請說明邏輯資料庫設計時的輸入和輸出各為何,並描述執行此步驟時 的主要考量。(15 分) 請說明實體資料庫設計時的輸入和輸出各為何,並描述執行此步驟時 的主要考量。(15 分)
若有一檔案的架構如下圖所示,其中各個箭頭是用來標示各個欄位間的 功能相關(functional dependency)。 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 依據此檔案的架構,請分別論述是否會發生新增異常(insertion anomaly)、修改異常(modification anomaly)和刪除異常(deletion anomaly)。(12 分) 請分別論述此檔案的架構是否符合第一正規化(first normal form)、第 二正規化(second normal form)和第三正規化(third normal form)的 要求,並請將其轉換成符合第三正規化要求的檔案架構。(18 分)
在建置資料庫時,請說明啟動器(trigger)的用途,並分別列出使用啟動 器的一個優點和一個缺點,然後對此優缺點進行論述。(15 分)
針對產品資料檔Product_T 和訂單明細檔OrderLine_T,用結構化查詢語 言(structured query language, SQL)所撰寫之指令如下所示,其中OrderID 為訂單編號,ProductID 為產品編號,ProductFinish 表示產品的生產地。 假設產品資料檔的主索引(primary index)為產品編號,訂單明細檔的主 索引為訂單編號和產品編號的組合。 SELECT DISTINCT OrderID FROM OrderLine_T WHERE EXISTS (SELECT * FROM Product_T WHERE ProductID = OrderLine_T.ProductID AND ProductFinish = ‘Taipei’); 請說明此指令所要完成的工作,並論述應如何設定這二個檔案的次要 索引(secondary index),才能讓這個指令有較好的執行效率。(10 分) 請在不使用子查詢(subquery)的條件下,重新撰寫這個指令以完成同 樣的工作,並論述這二種寫法的優缺點。(15 分)