2010年10月26日 星期二

Ch13. 建立資料表的關聯

重點整理 : 

13-1 資料表的關聯種類


在 Access 資料表中,可以透過資料表間的關聯,建立顯示多個資料表記錄的查詢表單報表等物件。

而 Access 中又區分為兩種關聯類型分別為 :
  • 暫時性關聯
  • 永久性關聯
暫時性關聯』,顧名思義即是關聯僅作用在該查詢物件,當結束該查詢後,關聯就跟著結束了。我們只需要建立多個資料表的查詢物件, Access便會自動在這些資料表之間建立暫時性關聯

我們只需要切換到建立頁次,並且按下查詢設計鈕來建立新的查詢。(如下圖)

再來將所要建立關聯的資料表新增,便建好了暫時性關聯。

資料表間的『永久性關聯』,當我們希望表格之間的關聯不只是作用在一個查詢,還可運用到其他物件上,如此便可在這些表格間建立永久性關聯

如此的好處有 :
  • 在我們建立新的查詢、表單或報表時,只要選用到永久關聯的資料表,Access 就會直接幫我們套上已經建立好的『永久性關聯』。
  • Access 可依照我們所設定的規則,來幫忙維護資料庫中的『資料的參考完整性』。
設定永久性關聯的方法有兩種,分別是建立查閱欄位,和直接在資料庫的關聯視窗中設定。


13-2 善用『查閱欄位』及『查閱精靈』

經由『查閱欄位』,我們可在一個資料表中查閱到另一個關聯資料表中的資料。

而建立查閱欄位的好處 :
  • Access 會將查閱所用到的關聯設為永久性關聯
  • 輸入資料時直接由查閱的列示窗中選取即可,免除鍵盤輸入的麻煩。
  • 必要時可以限制使用者只能由列示窗中選取,無法輸入其他的值,如此可以避免因輸入錯誤而導致的問題。
  • 瀏覽資料表時,可看到比較有意義的資料。
我們需使用查閱精靈來建立查閱欄位
如此,在輸入或更改資料時,我們只需拉下列示窗選取。(如下圖)

我們可以在設計檢視中,看到查閱欄的相關設定。


13-3 在『資料庫關聯圖』視窗中設定永久性關聯

資料庫關聯圖視窗主要是用來建立檢視修改各資料表間的永久性關聯

我們可以到功能區切換到資料庫工具頁次,在按顯示 / 隱藏區資料庫關聯圖鈕,即可。

我們在下圖中可以看到客戶資料表;而訂單資料表


我們必須選取強迫參考完整性鈕,如此下面兩項才可以設定。

我們分別對下列兩選項作說明。

串聯更新關聯欄位 :
  • 不選取時,表示關聯欄位不允許更新
  • 選取時,表示更改父資料的關聯欄位時,子資料表的關聯欄位也要一併更改
串連刪除關聯記錄 :
  • 不選取時,表示父資料表中的記錄不允許刪除
  • 選取時,表示刪除父資料表的記錄時,子資料表的相關記錄也要一併刪除
※設定強迫參考完整性時,其有效範圍僅限於父資料表中與子資料表 " 有關聯到 " 的記錄及欄位。若是沒關聯,則可任意更改或刪除。


修改關聯設定

如果我們要將原來的兩個關聯也設定強迫參考完整性,我們只要在關聯線上雙按滑鼠,便可開啓編輯關聯交談窗。
加入新的資料表或查詢

若想在資料庫關聯圖中,加入其他資料表,可按功能區顯示資料表鈕。

13-4 子資料工作表

子資料工作表』和『子資料表』不同的地方在於,子資料工作表可直接在其父資料表上開啓。且開啓的子資料工作表,就像一般的資料工作表一樣,可以進行各種工作表的操作

首先我們必須按下記錄區的其他鈕,執行『子資料工作表 / 子資料工作表』的命令。

在設定完成後我們便可在,客戶資料工作表中看到訂單子資料工作表


一、選擇題

1. ( 2 ) 使用查閱精靈來建立查閱欄位時,必須在設計檢視視窗下操作。

2. ( 3 ) 在資料庫關聯圖視窗中,我們不能做建立查詢設定。

3. ( 4 ) 在資料庫關聯圖視窗中,當資料表隱藏時,所有連到該資料表的關聯線一齊被隱藏

4. ( 4 ) 使用查閱精靈欄位時,在查閱頁次中,選擇文字方塊顯示控制項,就可將查閱的功能取消。

5. ( 4 ) 查閱欄位在查閱後,不需以鍵盤輸入;且不會將所有查閱到的欄位另外儲存;並不會另外產生表單及報表。所以正確的是可設定查閱欄位的列數


二、填充題

1. 通常在一對多的資料表關聯中, " " 的這一方是 資料表,而 " " 的這一方是 資料表。

2.
  • 當設為僅包含兩個資料表連接欄位的資料相同的記錄屬性時,會選出 :

  • 當設為包括所有來自 " 訂單 " 的記錄和只包括那些連接欄位相等的 " 訂單細目 " 欄位屬性時,會選出 :





三、問答題

1. 資料表的關聯可分為 :
  • 暫時性關聯,顧名思義即是關聯僅作用在該查詢物件,當結束該查詢後,關聯就跟著結束了。
  • 永久性關聯,當我們希望表格之間的關聯不只是作用在一個查詢,還可運用到其他物件上,如此便可在這些表格間建立永久性關聯

2. 在需要參考到其他資料表的欄位不適合做為『查閱欄位』;如果需要參考到其他資料表的欄位,應該適合使用資料庫關聯圖來做連結比較好。


四、實作題

首先先點選資料庫關聯圖鈕,並且將所有資料表加入。

如下圖。
接下來依照關聯性,設置關聯,並且設定為強迫參考完整性串聯刪除關聯記錄
在來一一設定,設定完成後,如下圖。

2010年10月25日 星期一

Ch12. 資料表正規化

重點整理 :


12-1  實體 - 關係圖與正規化的關係

資料表的『正規化』,指的其實就是一套『資料表分割』的法則。我們必須依循正規化理論所提出的各個步驟,逐步分割,而形成許多獨立但彼此關聯的小資料表。

而其目的在於,避免資料重複相互矛盾的情形,且使資料庫在使用時能更有效率,且易於維護。

上圖則是資料表正規化的 4 個步驟。

資料表正規化可以到 4NF、5NF等多個階段,但對於一般資料庫設計來說,只要執行到BCNF即可。


12-2  欄位相依

在一個資料表中,若乙欄位的值必須搭配甲欄位才有意義,則我們稱『乙欄位相依於甲欄位』。


12-3  第一階正規化 ( 1NF )

正規化的過程是循序漸進的,必須在滿足第一階正規化的條件下,才能進行第二階正規化。換句話說,第二階正規化必須建立在符合第一階正規化的資料表上。

第一階正規化的規則
  • 資料表中有主鍵,而其他所有的欄位都相依主鍵
  • 每個欄位中都只儲存單一值
  • 資料表中沒有意義相同的多個欄位。
12-4  第二階正規化 ( 2NF )

在執行符合一階正規化的資料表時,我們輸入了許多重複的資料。如此,不但浪費儲存空間,且容易造成新增刪除更新資料時的異常狀態。所以,我們必須進行第二階正規化,來消除這些問題。

第二階正規化的規則
  • 符合 1NF 的格式。
  • 各欄位與主鍵間沒有『部分相依』的關係。
部分相依』是在設有多個主鍵時才會發生,是指某些欄位只與主鍵中的部分欄位有相依性,而與另一部分的欄位沒有相依性。

部分相依所造成的問題 :
  • 新增資料時,因為主鍵不允許空白欄位。所以無法新增資料。
  • 更改資料時,我們必須將所想更改欄位一一更改,非常沒有效率。
  • 刪除資料時,我們會把不想刪除掉的欄位給一併刪除了。

12-5  第三階正規化 ( 3NF )

經過了第二階正規化後,還是存在了一些問題。就像上面所提到的 『部分相依』的問題,在新增更改 或者 是刪除方面都會造成相當大的不便,所以我們必須執行第三階正規化。

第三階正規化的規則
  • 符合 2NF 的格式。
  • 各欄位與主鍵間沒有『間接相依』的關係。
間接相依』是只在兩個欄位間並非直接相依,而是借助第三個欄位來達成資料相依的關係,例如 A 相依於 B;而 B 又相依於 C,如此 A 與 C 之間就是間接相依的關係。

而要找出各欄位與主鍵間的間接相依性,最簡單的方式就是看資料表中有無『與主鍵無關的相依性』存在。

要除去資料表中的『間接相依性』,其方法和除去『部分相依性』完全相同


12-6  Boyce - Codd 正規化 ( BCNF )

對於大部分資料庫來說,只需要執行到第三階正規化即足夠了。但資料表的主鍵是由多個欄位所組成的,則必須在執行 Boyce - Codd 正規化來檢驗。


Boyce - Codd 正規化的規則
  • 符合 3NF 的格式。
  • 主鍵中的各欄位不可以相依於其他非主鍵的欄位。
Boyce - Codd 正規化亦稱為『 廣義的 3NF 』。它只比 3NF 多規範了主鍵由多個欄位組成的資料表。

12-7  正規化的另類思考

正規化固然式設計資料庫的好方法,但它只是一個基本的原則而已,在原則之外,我們還需要考慮系統的需求自行做一些變化。

例如 :

  • 不必要的分割

我們如果將學生資料表按照正規化的原理進行分割則會如下圖。

而實際作業上,我們一定會使用整筆的地址資料,如果將它們分割了,那每次查詢地址時,都必須透過資料表的關聯,如此當資料量增加到一定程度時,就會明顯感受到系統效能降低的問題。 其實我們只須按照原本編排 (如下圖)。

  • 人工的分割
為了增加資料處理的效率,我們可將已經符合 BCNF 的資料表再做分割。例如一個資料表中擁有非常多的欄位,但如果其中許多欄位很少用到,那我們便可將這些很少用到的欄位分離出來,放到另一個資料表中。


一、選擇題

1. ( 3 ) 我們在資料表中除去與主鍵間接相依的欄位,是屬於正規化中的 3NF 階段。

2. ( 1 ) 我們在資料表中加入主鍵欄位,是屬於正規化中的 1NF 階段。

3. ( 2 ) 我們在資料表中除去與主鍵部分相依的欄位,是屬於正規化中的 2NF 階段。

4. ( 4 ) 我們在資料表中除去主鍵中的各欄位相依於其他非主鍵的欄位,是屬於正規化中的 BCNF 階段。

5. ( 2 ) 帳目管理資料表中有甲、乙、丙三個欄位,其中甲欄位和乙欄位具有資料相依性而乙欄位和丙欄位也具有資料相依性,我們稱甲欄位和丙欄位具有『間接相依』關係。


二、填充題

1. 在設計資料庫的過程中,我們必須執行資料庫的 正規化理論,來避免資料重複互相矛盾的情形,並使資料庫在使用時能更有效率、更容易維護。

2. 在正規化的階段中,2NF 的目的是在除去資料表中與主鍵具有 部分相依 的欄位,而 3NF 的目的是除去資料表中與主鍵具有 間接相依 的欄位。
 

三、問答題

1. 資料庫的正規過程 :
  • 1NF : 除去資料表中意義相同的欄位,並讓每個欄位中只有一個單一值。也要為資料表建立主鍵
  • 2NF : 除去資料表中與主鍵部分相依』的欄位。
  • 3NF : 除去資料表中與主鍵間接相依』的欄位。
  • BCNF : 除去主鍵中的各欄位相依於其他非主鍵的欄位。
2.
  • 1NF
  • 2NF

  • 3NF

四、實作題







    2010年10月20日 星期三

    Ch11. 建立關聯式資料庫

    重點整理 :

    11-1 如何設計一個完善的資料庫

    資料庫設計包含兩大部分 :
    • 操作者介面設計 : 就像是表單的設計,或是以程式語言所撰寫的操作介面。讓使用者不必接觸資料庫的結構,就能操作資料庫。
    • 結構設計 :是指設計出適當且最佳化的資料表。結構良好的資料庫可提升整體的存取效率及儲存效率。
    資料庫的設計流程

    資料庫的規劃過程大致可分為 4 個階段
    • 了解客戶需求概念設計 邏輯設計建立資料庫
    了解客戶需求

    在這個階段,設計者需要收集建立資料庫所需的資訊,做為後續設計的基礎。其中主要的工作包含兩項 :
    • 針對客戶需求,確定設計範圍
    • 收集和分析資料
    ※ 從現有的表單來收集資料,是快速又有效率的方法。

    概念設計

    這個階段中,設計者不需考慮資料的儲存及處理等與電腦相關的問題。主要需將收集的資料,經過分析及整理後,產生一個能符合使用者需求的資料庫模型。(如 : 實體 - 關係圖)

    通常我們將概念設計分為兩個階段 :
    • 建立分區概念設計圖 : 需分別針對不同需求的使用者,確定使用範圍。應針對不同的需求,設計不同的概念模型。
    • 整合為全區概念設計圖 : 完成分區的概念模型後,便要將它們整合為一個全區概念模型。
    整合時必須注意 : 解決各分區概念設計之間不一致的情形、刪除概念設計中重複或多餘的物件,以免造成後續設計時的困擾。

    邏輯設計

    此階段的主要工作,必須將概念設計產生的結果,轉換成實際使用的資料表。大致上的工作可分為兩項。
    • 轉換為資料表 : 我們必須將 實體 - 關係圖 正確無誤的轉換為實際使用的資料表。
    • 資料表正規化 : 為使資料庫最佳化,在轉換資料表後,能依照正規化的步驟重新檢驗一次,最好讓每一個資料表都能符合 BCNF 的規範 。
    建立資料庫

    經過上述步驟後,接著就是要將結果建立成為資料庫


    11-2  從客戶分析到建立實體 - 關係圖
    • Step 1 : 收集資料,確定設計範圍。
    • Step 2 : 依照不同的使用者訂出分區的設計範圍。
    • Step 3 : 列出系統中的實體及其屬性,例如 地點、人物、概念、設備等。
    • Step 4 : 建立實體之間的關係,這時就可利用到上一章所學分別為一對一一對多多對多的關係。
    • Step 5 : 加入屬性,實體和關係確認後,只要將屬性加入,即可完成實體 - 關係圖

    ※ 當我們在判斷一個物件究竟是實體屬性時,必須注意它是否還有其他屬性,或與其他實體產生關係。若有的話,則應被視為實體

    11-3  整合為全區的概念模型

    由於各分區的實體 - 關係模型面對的問題不同,容易導致各分區圖存在許多不一致的地方。因此整合時,最重要的工作便是消除各分區圖的不一致,產生一個能被所有使用者接受的概念模型。


    整合分區實體 - 關係圖時可能遭遇的問題

    整合實體 - 關係圖時可能遇到的問題有 3 類 :
    • 屬性不一致 : 各分區圖,對於相同實體的屬性類型、範圍、單位 ...等 會有不同。若遇上屬性不一致,通常容易解決,只要與各部門討論協商,訂出共同標準即可。
    • 命名不一致 : 大致上可分為兩種,同名不同義 同義不同名。與屬性不一致一樣,只要訂出一個共同標準即可。
    • 結構不一致 同一物件在不同的分區圖中的表現方式不同;或同一個實體在不同的分區圖中,所包含的屬性不相同;又或者實體間的關係在不同的分區圖中不相同。
    ※  為了滿足不同的需求,在整合時,就可使用多對多的關係來表示。

    實體 - 關係圖的整合可分為實體關係屬性 3 部分的整合。
    • 整合實體
    • 整合關係
    • 整合屬性
    • 消除不必要的實體、關係及屬性
    11- 4  將實體 - 關係圖轉換為關聯式的資料表

    實體及屬性的轉換,實體 - 關係圖中所有的實體都用資料表來表示;而屬性則轉換成資料表的欄位,若有鍵屬性,則成為資料表的主鍵


    弱實體的轉換,轉換時,必須將其依賴實體的鍵屬性加入,做為該弱實體的連外鍵,並與該弱實體的識別屬性合起來,成為弱實體的主鍵


    多值屬性的轉換,在轉換時,必須為該屬性另外建立資料表。


    實體間關係的轉換,我們可將其分為 :
    • 『 一對一 』關係的轉換
    • 『 一對多 』關係的轉換
    • 『 多對多 』關係的轉換
    超類型和子類型的轉換,轉換中子類型會有兩種情況,分別為子類型為兩個不相交、子類型屬於重疊的關係,這兩種狀況。

    如何轉換為關聯式資料表 :
    • Step 1 : 將實體轉換為資料表屬性轉換為欄位
    • Step 2 : 建立資料表之間的關聯

    一、選擇題

    1. ( 2 ) 設計實體 - 關係模型是屬於資料庫設計步驟中的概念設計階段

    2. ( 3 ) 由實體 - 關係圖推導出關聯式資料庫的過程中,若為實體,則會被轉換為資料表

    3. ( 4 ) 由實體 - 關係圖推導出關聯式資料庫的過程中,若該屬性為鍵屬性,則會被轉換為主鍵

    4. ( 3 ) 利用實體 - 關係模型設計出來的資料庫,一般都能符合資料庫正規化第三階段的規範。

    5. ( 2 ) 由實體 - 關係圖導出關聯式資料庫的過程中,若學生實體的專長屬性為多值屬性,則必須 " 為專長屬性另外建立專長資料表,將學生實體的鍵屬性加入專長資料表,成為專長資料表的連外鍵,並且與該資料表的識別欄位合起來成為主鍵 " 。

    6. ( 3 ) 調查使用者需求,並不是整合實體 - 關係圖時應注意的事項。


    二、填充題

    1.  資料庫的規劃過程大致可分為哪 4 個階段 : 了解客戶需求概念設計 邏輯設計

    2.  以實體 - 關係圖為例,在邏輯設計階段的工作為 轉化為資料表資料表正規化 等兩項。

    3.  在實體 - 關係圖的轉換過程中,若兩實體間是一對多的關係,則必須將 資料表的主鍵放入 資料表中做為連外鍵。

    4.  在一對多的關係中," " 的這一方是 資料表,而 " " 的這一方則是 資料表。


    三、問答題

    1. 資料庫設計的步驟大致上可分為 :
    • 了解客戶需求概念設計 邏輯設計建立資料庫
    2. 將實體 - 關係圖轉換為關聯式資料表 :

    3. 一旦對使用者的需求有了更進一步的認知,我們才可以依照使用者的需求來製作資料庫,不但對製作上的方向可以更確定,且使用者往後在操作上,也會帶來更多的便利,不會說找不到需要的功能或式操作不易 ...等問題的產生。


    四、實作題




      2010年10月12日 星期二

      Ch10. 利用『實體 - 關係模型 ( E - R Model )』規劃資料庫

      重點整理 : 

      10-1  何謂『實體 - 關係模型』

      實體 - 關係模型 ( Entity - Relationship Model ),簡稱 ( E - R Model ) 利用真實世界中事物和關係的觀念,來解釋資料庫中抽象的資料架構。

      當我們在利用實體 - 關係模型設計資料庫時,不會牽涉到資料庫的操作、儲存方式 ...等複雜的電腦運作,且實體 - 關係模型利用圖形的方式 " 實體 - 關係圖 " ( Entity - Relationship Diagram )來表示資料庫的概念設計,有助於設計過程中的構思及溝通討論。

      例如 :














      10-2  『實體 - 關係模型』的組成要素

      實體 - 關係模型主要是由實體 ( Entity )、關係 ( Relationship ) 及 屬性 ( Attribute )所組成。
      • 實體 ( Entity )
      所謂實體 ( Entity )指的就是真實世界中的物件。而實體又可分為實體集合 ( Entity Set )實體類型 ( Entity Type )實例 ( Instance )


      我們將同一類型的實體集合起來即成為實體集合 ( Entity Set );而又為了能明確區別每一個實體集合,我們便依照其特性之不同,賦予一個識別的名稱便稱為實體類型,而當中個別名稱就稱為實體類型中的實例


      實體依其存在的條件又可分為弱實體 ( Weak Entity ) 一般實體 ( Regular Entity )兩種。

      所謂弱實體就是必須依靠其他實體才能存在,如果弱實體所依靠的實體消失了,則該弱實體也就變得沒有意義。








      弱實體以外的實體則都算是一般實體,它不需要依靠其他實體存在。

      • 關係 ( Relationship ) 
      實體和實體之間必須透過關係 ( Relationship ) 才能產生連繫,否則只是兩個不相干的實體。

      實體 - 關係圖中我們以菱形表示,並利用直線連接兩個實體。(如下)

      而在實體 - 關係模型中,我們又可將實體與實體之間個關係分為 一對一一對多多對多 3 種關係。

      一對一』關係,這是最簡單的關係,在具有關係的兩個實體中,甲實體的任一實例只能對應到乙實體的單一實例;而乙實體的任一實例也只能對應到甲實體的單一實例。(如下圖)

      一對多』關係,則是說在具有關係的兩個實體中,甲實體的任一實例可對應到乙實體的多個實例;但乙實體的任一實例只能對應到甲實體的單一實例。(如下圖)






      多對多』關係,則是在具有關係的兩個實體中,甲實體的任一實例可對應到乙實體的多個實例;且乙實體的任一實例也能對應到甲實體的多個實例。(如下圖)

      •  屬性 ( Attribute )

      實體由若干屬性 ( Attribute ) 所組成,每個屬性都代表實體某方面的特性。而屬性是以" 橢圓形 " 來表示,並且以實線來和實體相連接。

      屬性又可分為數種類型 :

      鍵屬性 ( Key Attribute ),指在實體所有屬性中,若有一個屬性能唯一識別該實體中的實例,則我們稱之為 ( Key ) 屬性,就好像我們設定其為關聯式資料表中的主鍵一樣。其圖示是在屬性名稱下畫上 " 底線 " 表示。(如下圖)


      推導屬性 ( Derived Attribute ),是指實體中若某些屬性可由其他屬性推算而來,則這些屬性我們稱之為 " 推導屬性 "。我們以 " 虛線 " 橢圓形表示。(如下圖)
      複合屬性 ( Composite Attribute ),若某些屬性又可再細分為多個小屬性,我們即稱這些屬性為" 複合屬性 " 。

      多值屬性 ( Multi - Valued Attribute ),當一個屬性具有一個以上時,我們稱為 " 多值屬性 ",我們以 " 雙橢圓形 " 表示之。 (如下圖)
      10-3  擴充實體 - 關係模型

      擴充實體 - 關係模型 ( Extended Entity - Relationship Model ) 簡稱 ( EER Model ),是實體 - 關係模型的擴充,包含實體 - 關係模型的概念外,還加入了超類型子類型的觀念。

      超類型 ( Super Type ) / 子類型 ( Sub Type ) 的關聯,在設計資料庫的過程中,其實實體不如想像中單純還可依據某些特性上的差異,在細分為更多的實體。(如下圖所示)
      § 在一個實體集合中,可能某些實體具有特殊屬性,而我們必須要將它們和其他實體做區別,此時就必須運用到超類型子類型

      § 可能某些關係只關聯到一個實體集合中的某些實體,這時也必須運用超類型子類型


      擴充實體 - 關係模型的屬性繼承關係

      擴充實體 - 關係模型中,有一個非常重要的觀念,那就是繼承

      特殊化 ( Specialization )

      將員工實體依照其特殊特性,細分實體的過程,我們稱為特殊化

      歸納化 ( Generalization )

      我們可將許多實體中共同的特性集合起來,合成一個超類型,這種處理過程,我們稱為歸納化


      超類型中的實例只能屬於單一子類型,我們稱之為 disjoint 關係;若超類型中的實例可包含在一個以上的子類型中,我們稱之為 overlap 關係。


      一、選擇題

      1. ( 2 ) 模型並不是構成實體 - 關係模型的主要元素,主要構成實體 - 關係模型的元素有 實體關係屬性
      2. ( 4 ) 在實體 - 關係圖中 ,我們通常以                          來表示 " 弱實體 " 。

      3. ( 2 ) 在實體 - 關係模型中,如果甲實體的任一實例可對應到乙實體的多個實例;且乙實體的任一實例也能對應到甲實體的多個實例,我們稱它們之間的關係為 " 多對多關係 " 。  

      4. ( 4 ) 我們稱這些可以在細分出多個小屬性的屬性為 " 複合屬性 " 。
      5. ( 3 ) 在汽車駕駛人實體中,我們依其性質不同又區分為自用車駕駛人實體及營業用車駕駛人實體,而其中一個駕駛人既屬於自用車駕駛人實體也屬於營業用車駕駛人實體,我們稱為 " 子類型的 overlap 關係 "。

      二、填充題

      1. 在實體的所有屬性中,我們將用來唯一代表該實體的屬性稱為 屬性;某些屬性是其他屬性推導而來,我們稱為 推導 屬性;某些屬性又可再細分為多個小屬性,我們稱為 複合 屬性;當一個屬性具有一個以上的值時,我們稱為 多值 屬性

      2. 請畫出下列實體 - 關係圖組成要素的圖例 :

      (1) 弱實體

       (2) 關係



       (3) 多值屬性

       (4) 鍵屬性
      (5) 複合屬性

      三、問答題

      1.

      實體 ( Entity ) : 指的就是真實世界中的物件。而實體又可分為實體集合 ( Entity Set )實體類型 ( Entity Type )實例 ( Instance )

      實體和實體之間必須透過關係 ( Relationship ) 才能產生連繫,否則只是兩個不相干的實體。

      實體由若干屬性 ( Attribute ) 所組成,每個屬性都代表實體某方面的特性


      2.

      § 在一個實體集合中,可能某些實體具有特殊屬性,而我們必須要將它們和其他實體做區別,此時就必須運用到超類型子類型

      § 可能某些關係只關聯到一個實體集合中的某些實體,這時也必須運用超類型子類型

      3.

      (1)
      (2)
      (3)