假設有一醫院資料庫有以下之關聯表(Relational table),分別代表醫生
代號(Doctor#)、病人代號(Patient#)、日期(Date)、診斷(Diagnosis)、
治療代碼(Treat_code)以及費用(Charge),其綱要(Schema)如下所
示:
R (Doctor#, Patient#, Date, Diagnosis, Treat_code, Charge)
有底線之屬性(Attribute)為該表格之主鍵(Primary key),假設每個病
人祇給一位醫生診斷,每個治療代碼表示一個固定費用(不論病人)。
(1) 根據假設,請列出表格R 所有功能相依性(Functional Dependency)。
(2) 請問並說明原因,表格R 是第幾個正規型式?
(3) 請將其分解成符合3NF 的表格,並寫出每一個表格的綱要。
考慮以下兩支資料庫交易(database transaction)程式:
假設M = 2 及N = 3 的資料庫裡的資料項X 之初值為80,考慮以下排程
(schedule):
T1: read_item(X);
X:= X-N;
T2: read_item(X);
X:= X+M;
T1: write_item(X);
read_item(Y);
T2: write_item(X);
T1: Y:= Y-N;
write_item(Y);
(1) 以上排程的執行結果為何?
(2) 正確的排程執行結果應該是什麼?
以下四個關聯表為一公司中有關員工(EMPLOYEE)、工作(WORKS_IN)
、專案(PROJECT)及部門(DEPARTMENT)相關之資料庫,有劃底線
之欄位為主鍵。請用SQL 回答下列問題:
EMPLOYEE(EmployeeID, Fname, Lname, Bdate, Address, Sex, Salary,
SupervisorID, Dno)
WORKS_IN(EmpID, Pno, Hours)
PROJECT(Pnumber, Pname, Plocation, Dnum)
DEPARTMENT(DeptID, Dname, ManagerID, Mgr_strat_date)
(1) 檢索工作專案名稱'ProductX'及在部門5 及本週超過10 小時的員工姓
名。
(2) 對於每個專案,列出專案名稱和由全體職工用於這一專案每星期總時
數。(WORKS_IN 關聯表每星期清一次)
(3) 檢索工作在每個專案的所有員工姓名。
有一家公司中建置一個關聯式資料庫有以下之關聯表(Relational table),
分別代表員工(EMPLOYEE)、部門(DEPARTMENT)、工作(WORKS_IN)
與地點(LOCATIONS),其資料如下:每一個員工有一個員工編號、姓
名、隸屬部門以及開始工作時日,員工編號是唯一的。每一個部門有一
個部門編號、部門名稱及部門預算,一個部門可以有若干個員工,部門
編號和部門名稱都是唯一的。每一個部門祇有一個地點對應,每一個地
點都有它自己容量(Capacity),和相對應的地址及其屬性,例如州、城
市及街名。
試畫出此資料庫之實體關係圖(Entity-relationship diagram)。
可觀看題目詳解,並提供模擬測驗!(免費會員無法觀看研究所試題解答)