# 資料庫期中考 ## 第一章 ### 資料庫定義 資料庫是一堆相關資料的組織,資料有某個主題且有關聯性。 ### 資料庫模式 描述資料庫的方式稱為資料庫模式 - 檔案模式 最簡單的模式,資料庫被視為一串字元 - 實體關係模式 有兩種資料:實體、關係 - 關聯模式 資料表達成數個關聯 - 網路模式 資料組織被視為一種網路,資料與資料間若存在某種關係就用一個連結表示 - 階層模式 資料有上下關係 - 物件導向模式 網路模式+繼承概念 ### 資料庫系統邏輯架構 使用者 → 資料庫應用系統 → 資料庫管理系統 → 資料庫 優點:程式資料獨立性(寫程式時不須宣告檔案結構),容易撰寫資料庫應用系統 作法:先定義資料(稱為綱目),再做新增修改刪除 ### 資料庫系統的實體架構 - 主機型架構 應用系統的程式是集中放在大型主機上,使用者透過使用終端機連上主機 缺點:主機價格昂貴,維護成本高,環境封閉 - 檔案伺服器架構 應用程式及資料庫管理系統等移往前端,後端只剩下處理檔案儲存及分享的工作 缺點:使用人數多時,容易造成網路塞車,資料流量大,系統的表現不佳,也容易造成資料的不一致 - 主從式架構 資料庫管理系統被搬回後端伺服端,前端客戶端則只放應用程式 缺點:系統是建構在區域網路( LAN ) 的環境之下 ,且改版需求時,數量龐大的使用者端的程式都要修改,常造成維護上的一大負擔 ### 三層式架構 - 展示層 負責處理使用者輸入的資料 在Web的環境下,展示層即是使用者端的瀏覽器 - 商業邏輯層 負責整個應用系統的作業,包括企業之商業法則 ( Business Rules),資料處理,和網站網頁程式等 很多廠商把負責此層工作的主機稱為應用伺服器 - 資料服務層 處理商業邏輯層傳來的資料處理需求,並將結果傳回 資料服務層一般由DBMS來執行 ### 三層式資料架構 - 實體層 (內部綱目) - 概念層 (概念綱目) - 外部層 (外部綱目) 特點:資料獨立性 ## 第二章 ### 資料塑模 1. 概念塑模:繪製實體關係 2. 邏輯塑模:定義關聯綱目 3. 實體塑模:設定索引,考量效率,設計資料庫存取方法 ### 實體關係模式 實體關係模式的組成元件包括**實體(Entity)**和**關係(Relationship)**。 ### 實體 - 一個事情或物(會員、商品、購物車等) - 一個實體有對應的屬性,屬性會有屬性值 ### 屬性 - 屬性值不只一個時稱為多值屬性 - 一個屬性由多個屬性組成,稱為複合屬性 ### 實體型態 在一個實體型態裡,如果存在一個屬性,使得不同實體的該屬性值必然不同,我們就稱該屬性為**關鍵屬性** 一個實體的屬性值也可能是空值(null),空值的涵義有以下三種可能: - 知道有值但還未填入 - 該實體的該屬性不可能有值(NA) - 不知道該實體的該屬性是否有值 ### 實體關係圖(ERD) ![](https://i.imgur.com/bxqTOYi.png) a1 單值 a2 關鍵屬性 a3 多值 a4 複合 ### 二元關係型態 二元關係表示只有兩個實體。 結構限制包括兩部份:**基數比**和**參與度** 1. 基數比 表示一個實體最多可以跟幾個實體發生此類關係 ![](https://i.imgur.com/F29iqNv.png) 1:1,表示左邊的一個實體最多與右邊的一個實體發生此類關係,同時右邊的一個實體最多也只能跟左邊的一個實體發生此類關係 2. 參與度 每一實體是否至少需參與一個關係,若是稱為完全參與(以雙線表示),否則稱為部分參與(以單線表示) ![](https://i.imgur.com/CUjBqOl.png) ### 關係型態上的屬性 ![](https://i.imgur.com/rdO3yFX.png) ### 弱實體 關鍵屬性必須依賴某個關係型態的實體型態被稱為弱實體型態 ![](https://i.imgur.com/QCZZLtf.png) 此時「購物車產生時間」被稱為部分鍵, 「有」被稱為識別關係型態, 「會員」被稱為主實體型態 ## 遞迴關係 二元關係型態的左右兩邊實體型態是相同,只是扮演不同角色,此時就稱其為遞迴關係型態 ![](https://i.imgur.com/XQHlksL.png) ## 第三章 ### 多元關係型態 範例 ![](https://i.imgur.com/vtFAXoy.png) ### 二元關係其他表示法 - (min, max) 參與關係型態的每一實體型態上註明一(min, max),表示其每一實體最少要參與min個關係,最多則可參與max個關係 ![](https://i.imgur.com/3FwySKx.png) - 雞爪 用一個雞爪的形狀來表示N (多)個參與、一條短線來表示1個參與、和一個圓圈來表示0個(即沒有)參與 ![](https://i.imgur.com/oJF1qPq.png)