某公司為管理員工出差,登錄有員工資料包括身分證字號、姓名、工作
部門編號、薪水、員工帳號;出差資料有出差編號、出發地、抵達地、
出發日、抵達日、出差費。已知一個員工只在一個部門做事且只有一份
薪水登錄在一個帳號;不是每一位員工都會出差。一件出差,只有一種
行程和出差費,有一到多個員工參與,行程一樣,出差費也一樣。假設
關連設計如下:
員工(身分證字號、姓名、工作部門編號、薪水、員工帳號)
出差(身分證字號、出差編號、出發地、抵達地、出發日、抵達日、出
差費、員工帳號)
(1) 以上述關連為例,舉例說明超級鍵(superkey)和外部鍵(foreign key)
的性質。
(2) 說明上述關連設計在資料更新和刪除時有何嚴重缺點?要如
何改正,以維持一致性。
假設某公司資料庫有供應商資料、零件資料、供應零件資料:
Supplier (SID, SNAME, ADDRESS) // 供應商(供應商代號,供應商姓名,
地址)
Parts (PID, TYPE, PRICE) // 零件(零件編號,零件類別,價格)
Offer (SID, PID) // 供應零件(供應商代號,零件編號)
註:劃底線的屬性為主鍵
(1) 以關連代數運算子{selection σ、projection Π、equal-join ?、division /}
進行查詢“找出供應所有零件的供應商姓名”。
100 年公務人員高等考試三級考試
解題老師:林偉
100-64 資料庫應用
(2) 以SQL 表示查詢“找出那些價格最高的零件編號PID 和其價格
PRICE”。
(3) 以SQL 表示查詢“找出每個零件類別,其零件數和其平均價格”。
已 知 關 聯 R ={A, B, C, E, G, H} 為 1NF , 其 functional dependency
F ={A→B, B→C, AB→CEG, H→A}。
(1) 何者可作R 的主鍵(primary key)?要說明理由才可得分。
(2) 簡化集合F 成為M 使得M 含最少數量的functional dependency 且
F+ = M+。
(3) 若將R 分解成R1(A, B, C, E, G)與R2 (H, A),則是無失誤合併的分解
嗎?要說明理由驗證才可得分。
(4) 將R 分解為無失誤合併且保留F 的3NF 關聯,註明各關鍵的主鍵,要
注意控制屬性在各關連的重覆出現。
多數資料庫系統會定期執行checkpoint,以提高毀損回復(recovery)的
執行成效。
(1) 說明資料庫系統是如何執行checkpoint?
(2) 在有checkpoint 機制配合下,針對在checkpoint 後,毀損前,已
committed 和uncommitted 的交易(transaction),系統如何進行延遲更
新(deferred-update)的回復?
(3) 在有checkpoint 機制配合下,針對在checkpoint 後,毀損前,已
committed 和uncommitted 的交易(transaction),系統如何進行立即更
新(immediate-update)的回復?
可觀看題目詳解,並提供模擬測驗!(免費會員無法觀看研究所試題解答)