所屬科目:公職◆資料庫應用
一、假設某家銀行定義了一個借貸表格(BORROWER)管理顧客借款的資料,包含借款顧客(ID)、借款編號(LoanNO)和金額(Amount)等三個屬性。請利用SQL語法,首先在資料庫系統中定義一個叫做CustSummary的視觀表(View),表達每一個顧客的借款總數量和借款總金額。其次,利用此視觀表和SQL查詢句,輸出身分證字號為「A123456789」的借款總金額。最後,請說明為何此視觀表只適用於查詢資料,而不適用於建立新的資料。(30分)
二、BCNF(Boyce-Codd Normal Form)是設計關聯式資料庫綱要時常遵守的形式,請說明如何判斷一個表格是否符合BCNF的規定?若不符合會帶來何種問題?下列定義表格R的綱要、函數相依性和三筆範例資料:R=(A,B,C,D);F={AB→CD,C→B};請根據上述資訊詳加解釋為何該表格不符合BCNF?並以範例資料明確指出此表格可能產生的問題。(30分)
三、資料倉儲(Data Warehouse)架構常被用來整合多種資料來源以進行資料分析,而建立資料倉儲的其中一個重要步驟是進行ETL(Extract,Transform,Load)。首先,請詳述該步驟的功用。其次,收集資料的時機有同步(Synchronous)和非同步(asynchronous)兩種,請詳述此兩種做法的差別和優缺點。(20分)
四、資料庫管理系統中有一種特別的資料結構稱作資料字典(Data Dictionary)。請說明資料字典中存放何種資料,並提出至少三類,以及關聯式資料庫系統通常如何實作資料字典。(20分)