資訊處理 111 年資料庫應用考古題(共 4 題) 資料來源:考選部歷屆試題|法律人 LawPlayer 整理 https://lawplayer.com/exam/information-processing/111-database-applications 第 1 題 某圖書館所建立的關聯式資料庫系統(Relational database system)中,定 義了三個表格,其中MEMBER 表格記錄會員基本資料,包含會員編號 (Mid)、姓名(Name)和連絡電話(Telephone);BOOK 表格記錄書本 基本資料,包含國際標準書號(ISBN)、書名(Title)和出版社(Publisher); BORROWER 表格記錄借閱資料,包含借書者(Mid)、書號(ISBN)和 借閱日期(Date)。除了日期之外,其餘屬性皆為字串型態。此三個表格 的綱要簡列如下,且每個表格的主鍵以底線標註: MEMBER(Mid, Name, Telephone) BOOK(ISBN, Title, Publisher) BORROWER(Mid, ISBN, Date) 請利用SQL 查詢指令,分別回答下列子題: ㈠找出那些會員曾經借閱過“全華”出版社出版的書籍,列出其會員編號、 姓名和聯絡電話。(10 分) ㈡針對每個出版社,找出那些會員曾經借閱過3 本以上(含)該出版社出 版的書籍,每一筆輸出包含出版社和符合條件的會員編號。(10 分) ㈢定義一個名為TimeBookCount 的檢視表(view),輸出每個會員(以 Mid 代表)所借閱由“時報”出版社出版書籍的總數,並將檢視表的第一 個屬性命名為“Mid”,第二個屬性命名為“BookCount”。(10 分) 第 2 題 假設在關聯式資料庫系統中,資料庫管理者(DBA)定義了一個MEMBER 表格,其中包含三個字串型態的屬性:Mid、Name、Telephone,並根據Mid 欄位定義一個名為“MyIndex”的B+-tree 索引(Index)。首先請說明 “MyIndex”索引的樹狀結構,包含其內部節點、葉節點、結構的特性等, 答案請以文字敘述或圖形呈現。其次請說明資料庫系統如何利用該索引結 構,提升下列SQL 查詢句的處理效能: select Name from MEMBER where Mid = ‘M001’(20 分) 第 3 題 關聯式資料庫系統在實作異動處理(Transaction Processing)時,大多希望 能符合ACID 四個特性以確保資料庫內容的正確性。假設一個異動欲從P 帳戶轉1000 元到Q 帳戶,其中包含的六個指令如下表所示。請以該異動 具體說明ACID 所代表的四個要求分別為何?若沒有達到該要求會造成 什麼不良的影響?(20 分) 1. read(P) 2. P : = P – 1000 3. write(P) 4. read(Q) 5. Q : = Q + 1000 6. write(Q) 第 4 題 假設我們要建立書籍的資料,其中書籍的編號(No)和書名(Title)為字 串型態,而作者(Authors)則為數個字串組合而成的陣列,且每本書籍的 編號皆不與其他書籍相同。兩本書籍的範例資料如下表所示: No Title Authors 1 計概 [趙先生, 張小姐] 2 資料庫 [Silbers, Korth, Sudar] 針對上述的資料特性,首先請設計出符合第一正規化(First Normal Form) 的關聯式表格,每個表格標註其欄位名稱與主鍵,以及對應上表的範例資 料內容。其次,請將上述表格內容直接以一個集合(collection)內含兩個 JSON(JavaScript Object Notation)文件(document)表示,其中一本書籍對 應到一個JSON 文件。最後,根據你的答案,詳述結構化(structured)關聯 式資料和半結構化(semi-structured)JSON 資料表示法的差異性。(30 分) 題目為考試當年公告版本,實務標準請以現行規範為準。