E-R 資料模型建構 <ul><li>巨匠電腦  葉建榮整理 [email_address] </li></ul>
E-R 資料模型建構之前言 <ul><li>規劃一個嚴謹的資料庫藍圖,需觀察跟企業有關的各種資料,整理出一個有系統的資料關係圖。 </li></ul><ul><li>E-R 資料模式:協助使用者或是資料庫管理師進行資料庫概念設計。 </li><...
E-R 資料模型 <ul><li>E-R 資料模型  (E-R model, entity-relationship model)  是在 1975 年由 Peter P.S Chen  所提出 </li></ul><ul><ul><li>用來...
<ul><li>每個實體都會包含一個或一個以上的實例 (instance)  。 </li></ul><ul><li>每個實體的實例可以透過關聯式模型中的表格 (table) 來紀錄  </li></ul>實體 實體與實例 (instance)...
<ul><li>屬性 (Attribute)  </li></ul><ul><ul><li>對於每個實體,使用者會有進一步想紀錄或了解的資訊,而這些資料便成為該實體的屬性 (attribute)  。 </li></ul></ul><ul><u...
各種屬性的區分 <ul><li>學者 Chen 進一步將屬性作以下的區分  </li></ul><ul><ul><li>簡單屬性 (simple attribute) 與複合屬性 (composite attribute)  。 </li></...
各種屬性的圖形表示法
<ul><li>關係 (Relationship)  </li></ul><ul><ul><li>指存在實體與實體之間的關聯 。 </li></ul></ul><ul><ul><li>關係把  E-R  模型中的實體結合在一起,一個關係是一個或...
<ul><ul><li>以二元關係為例分別說明 1 對 1 、 1 對多以及多對多關係如下 </li></ul></ul><ul><ul><ul><li>1 對 1 :是指實體與實體之間存在 1 對 1 的關係。  </li></ul></ul...
<ul><li>在透過 E-R 資料模型表示實體與實體之間的關係程度時,有時尚需要註明一個實體之實例 (instance) 與另一個實體之實例間關聯之數目。 </li></ul><ul><ul><li>該關聯之數目可能會有最小或最大之限制,也可...
基數範例一 基數範例二
<ul><ul><li>除三種基本關係外, Chen 並提出另外兩種關係 </li></ul></ul><ul><ul><ul><li>單一實體參與的關係 (unary) :又稱為遞迴關係 (recursive relationship) 。 ...
<ul><ul><ul><li>三個實體參與的關係 (ternary) :此類關係是包含三種實體。 </li></ul></ul></ul>三個實體參與的關係
建構一個 E-R  關聯圖之一  <ul><li>A 大學想要建立一個資料庫,希望日後可以透過資料庫紀錄以下資訊 </li></ul><ul><ul><li>各系的基本資料:各系系名、系辦公室分機、目前的主任姓名以及所在位置。 </li></u...
<ul><li>管理規則 </li></ul><ul><ul><li>一個教授只能被一個系聘任。 </li></ul></ul><ul><ul><li>教授得兼行政職務。 </li></ul></ul><ul><ul><li>每位教授只能兼任一...
<ul><li>可根據以下步驟,利用 E-R 資料模型進行資料庫的概念分析。 </li></ul><ul><ul><li>決定實體。 </li></ul></ul><ul><ul><li>為每個實體定義出所包含的屬性。 </li></ul></...
<ul><ul><li>找出存在實體之間的關係。 </li></ul></ul>範例 1-3  以「系」和「教授」以及「教授」和「開課班級」為例
<ul><ul><li>將重複出現的實體作為連接的基礎,將一組一組的 E-R 資料模型整合整一個完整的 E-R 關聯圖。  </li></ul></ul>將範例 1-3  整合後的 E-R 關聯圖
挑戰資料庫管理系統 完整的 E-R 關聯圖
<ul><li>E-R 資料模式應用在內層資料模式的建構,為了清楚地表示出資料庫未來在實作階段所要產生的表格。 </li></ul>範例 1  E-R 資料模型所完成的內層資料模型 ( 資料庫內部操作 )
<ul><li>由應用程式的角度來看,可以把開課班級和學生之間的關係看成一個選課系統,教授以及開課班級之間的關係為一個排課系統。 </li></ul>範例 1  將 E-R 資料模性應用在建構外層資料模式   ( 應用程式操作所需欄位 )
建構一個 E-R  關聯圖之二 <ul><li>A&B 公司想要建立一個資料庫,希望日後可以透過資料庫記錄以下資訊: </li></ul><ul><ul><li>各個顧客的基本資料:顧客編號、統一編號、顧客名稱、地址、聯絡電話以及聯絡人姓名。 ...
<ul><li>管理規則如下 </li></ul><ul><ul><li>在記錄顧客的聯絡電話時, A&B 公司習慣記錄兩支電話號碼。 </li></ul></ul><ul><ul><li>每張訂單只隸屬於一個顧客,但是一個顧客可以下很多張訂單...
<ul><li>決定實體:根據上述描述,我們可以歸納出 A&B 公司有興趣的人、事、物分別是:顧客、訂單以及產品。如圖 5.21 所示。 </li></ul>Page: 範例 2  A&B  公司資料庫概念設計中所定義的實體
<ul><li>為每個實體定義出所包含的屬性:以顧客為例,如以下圖示。 </li></ul>範例 2  以「顧客」為例,說明各實體與其屬性之關係
<ul><li>找出存在實體之間的關係: </li></ul>範例 2-2a  「顧客」和「訂單」的關係
範例 2-2b  「訂單」和「訂單明細」的關係
範例 2-2c  「產品」和「訂單明細」的關係
<ul><li>重複出現的實體做為連接的基礎,將一組一組的 E-R 資料模型整合一個完整的 E-R 關聯圖。在此以「顧客」和「訂單」以及「訂單」和「產品」兩組資料模型作為整合的範例。 </li></ul>
範例 2-3  完整的 E-R 關聯圖
範例 2-4  將 E-R 資料模性應用在建構內層資料模型 ( 資料庫內部操作 )
範例 2 -5  將 E-R 資料模型應用在建構外層資料模型 ( 應用程式操作所需欄位 )
Upcoming SlideShare
Loading in...5
×

ER_model

12,393

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
12,393
On Slideshare
0
From Embeds
0
Number of Embeds
10
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

ER_model

  1. 1. E-R 資料模型建構 <ul><li>巨匠電腦 葉建榮整理 [email_address] </li></ul>
  2. 2. E-R 資料模型建構之前言 <ul><li>規劃一個嚴謹的資料庫藍圖,需觀察跟企業有關的各種資料,整理出一個有系統的資料關係圖。 </li></ul><ul><li>E-R 資料模式:協助使用者或是資料庫管理師進行資料庫概念設計。 </li></ul><ul><li>這一份簡報刪減 E-R 資料模型相關名詞介紹與定義,如對 E-R 資料模型想做進一步的瞭解,建議參考相關書籍介紹 </li></ul>
  3. 3. E-R 資料模型 <ul><li>E-R 資料模型 (E-R model, entity-relationship model) 是在 1975 年由 Peter P.S Chen 所提出 </li></ul><ul><ul><li>用來協助資料庫管理師描述出實體 (entity) 以及實體和實體之間的各種關係 (relationship) 。 </li></ul></ul><ul><ul><li>而透過 E-R 資料模型所描繪出的 E-R 資料關聯圖便是對應到資料庫架構三層次中概念層的概念模型 (conceptual model) 。 </li></ul></ul><ul><li>實體 (Entity) </li></ul><ul><ul><li>實體在真實世界是指我們有興趣的人、事、物 。 </li></ul></ul><ul><ul><li>實體細分為強實體 (strong entity) 以及弱實體 (weak entity) ,以及實體子型態以及超型態 。 </li></ul></ul><ul><li>屬性 (Attribute) </li></ul><ul><li>關係 (Relationship) </li></ul>
  4. 4. <ul><li>每個實體都會包含一個或一個以上的實例 (instance) 。 </li></ul><ul><li>每個實體的實例可以透過關聯式模型中的表格 (table) 來紀錄 </li></ul>實體 實體與實例 (instance) 之間的關係 學生 SNO SNAME ADDRESS TEL 8334801 林小華 桃園大溪路 25 號 33213016 8334802 陳孟 彰化大學路 101 號 47244901 …       8334821 王小雲 台北市信義路 8 巷 11F2 號 226327801
  5. 5. <ul><li>屬性 (Attribute) </li></ul><ul><ul><li>對於每個實體,使用者會有進一步想紀錄或了解的資訊,而這些資料便成為該實體的屬性 (attribute) 。 </li></ul></ul><ul><ul><li>每個實體通常擁有多個屬性。 </li></ul></ul>屬性 實體與屬性的圖形表示
  6. 6. 各種屬性的區分 <ul><li>學者 Chen 進一步將屬性作以下的區分 </li></ul><ul><ul><li>簡單屬性 (simple attribute) 與複合屬性 (composite attribute) 。 </li></ul></ul><ul><ul><li>鍵 (key) :是指該屬性的值在某個環境內具有唯一性。 </li></ul></ul><ul><ul><li>單值屬性 (single-valued attribute) 與多值屬性 (multi-valued attribute) </li></ul></ul><ul><ul><li>衍生屬性 (derived attribute) 。 </li></ul></ul>各種屬性的圖形表示法
  7. 7. 各種屬性的圖形表示法
  8. 8. <ul><li>關係 (Relationship) </li></ul><ul><ul><li>指存在實體與實體之間的關聯 。 </li></ul></ul><ul><ul><li>關係把 E-R 模型中的實體結合在一起,一個關係是一個或多個實體的實例間之關聯 (association) ,一個關聯經常意味著事件已發生或存在一些實例間自然的連結。關係的程度 (Degree of a Relationship) 簡稱關係度 (degree) ,是參與在某個關係中之實體類型的數量。 </li></ul></ul><ul><ul><li>在 E-R 資料模型中,三種最常見之關係度分別為:單一 (Unary, degree one) 、二元 (Binary, degree two) 以及三元 (Ternary, degree three) 關係。不論是一個實體或多個實體的實例間存在關係, E-R 資料模型將這些關係區分為三類:分別是 1 對 1(1:1) 、 1 對多 (1:m) 以及多對多 (m:n) 。 </li></ul></ul><ul><ul><ul><li>對於這三種關係, Chen 在 E-R 資料模型中給定一個名詞「基數 (cardinality) 」來稱呼。 </li></ul></ul></ul>
  9. 9. <ul><ul><li>以二元關係為例分別說明 1 對 1 、 1 對多以及多對多關係如下 </li></ul></ul><ul><ul><ul><li>1 對 1 :是指實體與實體之間存在 1 對 1 的關係。 </li></ul></ul></ul><ul><ul><ul><li>1 對多:是指實體與實體之間存在 1 對多的關係。 </li></ul></ul></ul><ul><ul><ul><li>多對多:是指實體與實體之間存在多對多的關係。 </li></ul></ul></ul>三種不同的實體關係 ( m 與 n 都表示多的意思 )
  10. 10. <ul><li>在透過 E-R 資料模型表示實體與實體之間的關係程度時,有時尚需要註明一個實體之實例 (instance) 與另一個實體之實例間關聯之數目。 </li></ul><ul><ul><li>該關聯之數目可能會有最小或最大之限制,也可能完全沒限制。 </li></ul></ul><ul><ul><li>如果關聯數目有最小或最大之限制,則分別稱之為最小基數 (Minimum cardinality) 與最大基數 (Maximum cardinality) 。 </li></ul></ul><ul><ul><li>最小基數表示某實體之實例能與另一實體之實例關聯之最小數目;相對於最小基數,最大基數則表示關聯實例的最大數。 </li></ul></ul>
  11. 11. 基數範例一 基數範例二
  12. 12. <ul><ul><li>除三種基本關係外, Chen 並提出另外兩種關係 </li></ul></ul><ul><ul><ul><li>單一實體參與的關係 (unary) :又稱為遞迴關係 (recursive relationship) 。 </li></ul></ul></ul>單一實體的關係 (unary relationship)
  13. 13. <ul><ul><ul><li>三個實體參與的關係 (ternary) :此類關係是包含三種實體。 </li></ul></ul></ul>三個實體參與的關係
  14. 14. 建構一個 E-R 關聯圖之一 <ul><li>A 大學想要建立一個資料庫,希望日後可以透過資料庫紀錄以下資訊 </li></ul><ul><ul><li>各系的基本資料:各系系名、系辦公室分機、目前的主任姓名以及所在位置。 </li></ul></ul><ul><ul><li>學生的基本資料:包括學生的學號、姓名、地址、聯絡電話、出生年月日、年齡。 </li></ul></ul><ul><ul><li>教職員的基本資料:包括教職員的教職員編號、辦公室號碼、分機、聯絡電話與地址。如果是職員希望可以額外紀錄其工作單位,如果是教授希望可以紀錄其聘任的系所名稱以及專長。 </li></ul></ul><ul><ul><li>行政單位:包括分機、主管。 </li></ul></ul><ul><ul><li>每學期的課程資料:包括課程名稱、學分數。 </li></ul></ul><ul><ul><li>每學期的開課班級:包括上課時間、地點、授課老師以及可容納人數。 </li></ul></ul><ul><ul><li>學生修課的情形:紀錄每個學生修課的成績。 </li></ul></ul><ul><ul><li>紀錄每門課程的主修課程。 </li></ul></ul>
  15. 15. <ul><li>管理規則 </li></ul><ul><ul><li>一個教授只能被一個系聘任。 </li></ul></ul><ul><ul><li>教授得兼行政職務。 </li></ul></ul><ul><ul><li>每位教授只能兼任一行政職務。 </li></ul></ul><ul><ul><li>每位學生至少要修一門課,最多六門課。 </li></ul></ul><ul><ul><li>一位同學不得就同一門課程選修兩個開課班級。 </li></ul></ul><ul><ul><li>每個系會有一位且只有一位系主任。 </li></ul></ul><ul><ul><li>每個授課班級只會有一位老師授課,同一門課程的授課班級可以都是同一位老師也可以是不同的老師授課 </li></ul></ul><ul><ul><li>每個教授可以有多個專長。 </li></ul></ul><ul><ul><li>每門課程最多會有兩門先修課。 </li></ul></ul>
  16. 16. <ul><li>可根據以下步驟,利用 E-R 資料模型進行資料庫的概念分析。 </li></ul><ul><ul><li>決定實體。 </li></ul></ul><ul><ul><li>為每個實體定義出所包含的屬性。 </li></ul></ul>範例 1-1 A 大學資料庫概念設計中所定義的實體 範例 1-2 以「系」為例,說明各實體與其屬性之關係
  17. 17. <ul><ul><li>找出存在實體之間的關係。 </li></ul></ul>範例 1-3 以「系」和「教授」以及「教授」和「開課班級」為例
  18. 18. <ul><ul><li>將重複出現的實體作為連接的基礎,將一組一組的 E-R 資料模型整合整一個完整的 E-R 關聯圖。 </li></ul></ul>將範例 1-3 整合後的 E-R 關聯圖
  19. 19. 挑戰資料庫管理系統 完整的 E-R 關聯圖
  20. 20. <ul><li>E-R 資料模式應用在內層資料模式的建構,為了清楚地表示出資料庫未來在實作階段所要產生的表格。 </li></ul>範例 1 E-R 資料模型所完成的內層資料模型 ( 資料庫內部操作 )
  21. 21. <ul><li>由應用程式的角度來看,可以把開課班級和學生之間的關係看成一個選課系統,教授以及開課班級之間的關係為一個排課系統。 </li></ul>範例 1 將 E-R 資料模性應用在建構外層資料模式 ( 應用程式操作所需欄位 )
  22. 22. 建構一個 E-R 關聯圖之二 <ul><li>A&B 公司想要建立一個資料庫,希望日後可以透過資料庫記錄以下資訊: </li></ul><ul><ul><li>各個顧客的基本資料:顧客編號、統一編號、顧客名稱、地址、聯絡電話以及聯絡人姓名。 </li></ul></ul><ul><ul><li>產品的基本資料:包括產品的編號、產品名稱以及單價。 </li></ul></ul><ul><ul><li>訂單資料:包括訂單編號、顧客名稱、下單日期、交貨日期、交貨地點、訂單明細以及總金額。其中,訂單明細包括明細編號、數量(指訂購數量)與售價。 </li></ul></ul>
  23. 23. <ul><li>管理規則如下 </li></ul><ul><ul><li>在記錄顧客的聯絡電話時, A&B 公司習慣記錄兩支電話號碼。 </li></ul></ul><ul><ul><li>每張訂單只隸屬於一個顧客,但是一個顧客可以下很多張訂單。 </li></ul></ul><ul><ul><li>每張訂單可以包含很多個訂單產品。 </li></ul></ul>
  24. 24. <ul><li>決定實體:根據上述描述,我們可以歸納出 A&B 公司有興趣的人、事、物分別是:顧客、訂單以及產品。如圖 5.21 所示。 </li></ul>Page: 範例 2 A&B 公司資料庫概念設計中所定義的實體
  25. 25. <ul><li>為每個實體定義出所包含的屬性:以顧客為例,如以下圖示。 </li></ul>範例 2 以「顧客」為例,說明各實體與其屬性之關係
  26. 26. <ul><li>找出存在實體之間的關係: </li></ul>範例 2-2a 「顧客」和「訂單」的關係
  27. 27. 範例 2-2b 「訂單」和「訂單明細」的關係
  28. 28. 範例 2-2c 「產品」和「訂單明細」的關係
  29. 29. <ul><li>重複出現的實體做為連接的基礎,將一組一組的 E-R 資料模型整合一個完整的 E-R 關聯圖。在此以「顧客」和「訂單」以及「訂單」和「產品」兩組資料模型作為整合的範例。 </li></ul>
  30. 30. 範例 2-3 完整的 E-R 關聯圖
  31. 31. 範例 2-4 將 E-R 資料模性應用在建構內層資料模型 ( 資料庫內部操作 )
  32. 32. 範例 2 -5 將 E-R 資料模型應用在建構外層資料模型 ( 應用程式操作所需欄位 )

×