移民行政 115 年資料庫應用考古題
題目為考試當年公告版本,實務標準請以現行規範為準。
現在有以下一個情境,農村眾小農想要設計一套在地作物自產自銷系 統,讓農友可透過網路自行在網路上販售自己生產的作物。小農(Farmer) 可上網申請帳號進入系統,申請時要登錄自己的編號(FID)、姓名 (FNAME)、地址(FADDR)、銀行帳號(FACC)。考慮到食安溯源,每一塊 農地(Land)都需要登錄地號(LID)、土地大小(LSIZE,單位是平方公尺)、 也要知道那個小農擁有此農地,每一塊農地只能登記在一位小農名下。 每位小農可提供多種作物(Crop)於系統上販售,同一種作物也可由多個 小農提供。系統中已預先設定能種植的作物編號(CID),且同種作物的價 格(CPRICE)、名稱(CNAME)都是一樣的,但小農提供販賣作物時要設定 數量(PQTY,單位是公斤kg)。買家(Buyer)上網要登錄自己的編號(BID)、 姓名(BNAME)、地址(BADDR)、銀行帳號(BACC)。買家有錢當然可以 買多種作物。 ㈠試繪出該系統之實體關係圖(Entity-Relationship Diagram, ER 圖),圖 中實體相關的資料請使用題目提供的英文名稱,關係則請用題目提供 的中文。(15 分) ㈡若將㈠小題的ER 圖轉成關聯式綱要表,且已知小農綱要表是 Farmer(FID, FNAME, FADDR, FACC),請依此格式寫出所有的綱要表, 且每個綱要表要標明主鍵。(15 分) ㈢有一個叫志明的小農,他的編號是945,家住臺灣尚水村嘉南平原路 99 號。而他的農地地號168,農地的大小400 平方公尺,種了美人花 生(作物編號88),今年收成了2 公噸,今年的公定價是1000 元/公斤, 銀行帳號是314159265。請根據上述資料,列出將資料插入相應資料 表的SQL 指令。(10 分) ㈣美人花生銷售太好,所以管理者希望查詢有賣美人花生的小農姓名與 該小農提供的數量。請協助提供SQL 查詢指令(10 分)注意:此系 統使用者輸入查詢時需輸入作物編號。
在一個電商的訂單商品評價系統有一個表格如下: 訂單編號 (OID) 商品編號 (PID) 商家編號 (SID) 評價等級 (Rating) 評價紀錄編號 (RID) 評價內文 (Comment) 商家名稱 (SName) O101 P99 S01 2 R801 貨超爛 南陽大藷 P98 4 R802 包裝好 O102 P99 S02 5 R403 出貨快 臺灣番薯 ㈠已知此表格不滿足第一正規化(First normal form),請將它轉成滿足 第一正規化的表格,並將其命名為R1。(5 分) 表格都需以底線標示主鍵,後續的答案格式如:表格名(屬性1, 屬性 2, ….),如R1(A, B, C …)。 ㈡假設R1 綱要表的候選鍵,可能由OID 或PID 屬性(attribute)組成, 且其屬性間的功能相依(functional dependency)如下:OID→SID, SID→SName, RID→Comment, RID→Rating。請針對R1 進行正規 化,列出所有符合第二正規化的表格,並請命名為R1x。例如第一個 表格R11,第二個R12,以此類推。(10 分) ㈢請根據㈡小題所產生的表格進行正規化,列出所有符合第三正規化的 表格(每一個表格都需指出主鍵)。(因第三正規化表格由R11 或R12 衍 生,故請命名為R11x、R12x。例如R11 拆解的第一個表格命名為R111, 第二個R112,R12 拆解的第一個表格命名為R121,以此類推)(10 分)
請就分散式資料庫的位置通透性(Location Transparency)、分割通透性 (Fragmentation Transparency)、複製通透性(Replication Transparency), 說明這些通透性的概念和特性。(15 分)
當資料庫管理系統進行交易(Transaction)時發生故障,為了確保資料的 原子性(Atomicity)與持續性(Durability),有兩種回復(Recovery)處理 方法,請說明這兩種方法在尚未COMMIT 之前會如何處理資料。(10 分)