個體
This presentation is the property of its rightful owner.
Sponsored Links
1 / 59

個體 — 關聯模式 PowerPoint PPT Presentation


  • 75 Views
  • Uploaded on
  • Presentation posted in: General

個體 — 關聯模式. 資料庫系統之理論與實務 4.8. 專有名詞. 實體 (Entity) :代表真實世界中的一個事物或觀念。 屬性 (Attribute) :描述實體之個別特性。 實體集 (Entity Set) :一群擁有相同屬性的實體。 關係 (Relationship) :數個實體間的聯結 (Associate) 。 關係集 (Relationship Set) :同類型關係的集合。. Student. Study-in. Department. e1. r1. d1. e2. r2. d2. e3. r3. d3. e4. r4.

Download Presentation

個體 — 關聯模式

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


5885992

個體—關聯模式

資料庫系統之理論與實務 4.8

Hue-Ling Chen


5885992

Hue-Ling Chen


5885992

Hue-Ling Chen


5885992

專有名詞

  • 實體(Entity):代表真實世界中的一個事物或觀念。

  • 屬性(Attribute):描述實體之個別特性。

  • 實體集(Entity Set):一群擁有相同屬性的實體。

  • 關係(Relationship):數個實體間的聯結(Associate)。

  • 關係集(Relationship Set):同類型關係的集合。

Hue-Ling Chen


5885992

Student

Study-in

Department

e1

r1

d1

e2

r2

d2

e3

r3

d3

e4

r4

d4

Student, Department

→ 實體集 (entity set)

Study-in

(

relationship set

)

→ 關係集

e1, e2, e3, e4

(entity)

為實體

d1, d2, d3, d4

(entity)

為實體

r1, r2, r3, r4

(relationship)

為關係

Hue-Ling Chen


5885992

E-R圖和自然語言的對應關係

  • 名詞:一個句子的主詞/受詞,對應到實體型態。

  • 形容詞:修飾名詞的形容詞,對應到實體型態上的屬性。

  • 動詞:聯繫主詞/受詞,對應到關係型態。

  • 副詞:修飾動詞,對應到關係型態上的屬性。

Hue-Ling Chen


5885992

張三

年齡

性別

Hue-Ling Chen


5885992

年資

工作

Hue-Ling Chen


5885992

部門

名稱

代號

Hue-Ling Chen


5885992

個體—關聯模式中的概念 (1)

  • 「語意資料模式」→資料的分析與規劃

  • 「個體關聯圖」→系統分析與邏輯資料庫設計的工具,系統分析師與使用者的溝通介面。

  • 個體(實體,Entities):例子:員工與家屬的資料

    • 強個體型態:一實體型態決定另一實體的存在於否。

    • 弱個體型態:一實體型態是依賴另一實體型態而存在,沒有充分的屬性構成主鍵。

    • 存在相依(existence-dependence):一個實體的存在與否,是由其它實體決定。

Hue-Ling Chen


5885992

Hue-Ling Chen


5885992

個體—關聯模式中的概念 (2)

  • 個體類型

    • 同一類型的個體組成一個個體類型(Entity Type)

  • 特性

    • 單一特性或複合特性

    • 鍵值

    • 單一值、多重值或一個不確定的虛值

    • 基本特性或導出的特性

Hue-Ling Chen


5885992

學生

大學部

研究生

碩士班

博士班

個體—關聯模式中的概念 (3)

  • 個體與個體之間的關係

    • 一對一、一對多、多對多

    • 弱勢關係

  • 子類型(Subtypes):演變成「物件導向模式」的基礎。

Hue-Ling Chen


Entity relationship

個體—關聯模型(Entity – Relationship)

Hue-Ling Chen


Entity relationship1

個體—關聯模型(Entity – Relationship)

Hue-Ling Chen


5885992

屬性的型態 (1)

  • 簡單vs.複合屬性

    • 簡單屬性:一屬性不能再被分割。

    • 複合屬性:一屬性可被分割成數個具有含意的屬性。

Hue-Ling Chen


5885992

屬性的型態 (2)

  • 單值屬性vs.多值屬性

    • 單值屬性:對一個實體而言,若其某一屬性僅有一個內含值,則該屬性稱之為單值屬性。

      • 例子: 年紀為單值屬性

    • 多值屬性:若屬性的內含值有多種可能值,則稱該屬性為多值屬性。

      • 例子: 聯絡電話為多值屬性

Hue-Ling Chen


5885992

id

書名

價錢

出版商

作者

Books

Hue-Ling Chen


5885992

屬性的型態 (3)

  • 衍生屬性:屬性的內含值可由其它的屬性得知。

  • Stored attribute:可推演出衍生屬性的屬性。

    • 例子: 年紀可由出生日期推算而來。

衍生屬性

Stored attribute

Hue-Ling Chen


5885992

例子:

Hue-Ling Chen


5885992

弱實體型態與辨認關係型態

  • 辨認擁有者(Identifying Owner):

    • 弱實體型態依附強實體型態而存在,強實體型態為弱實體型態之辨認擁有者。

  • 辨認關係型態(Identifying Relationship):

    • 弱實體型態與其擁有者之間的關係型態。

Hue-Ling Chen


5885992

Hue-Ling Chen


Mapping cardinality cardinality ratio

映射大小(Mapping Cardinality、Cardinality Ratio)

  • 透過關係型態,描述一個實體型態中的實體與其它實體型態中有多少實體連結。

    • 1:1(一對一)

    • 1:N(一對多)

    • N:M(多對多)

Hue-Ling Chen


5885992

1:1(一對一)

一個男人只能有一個太太。

一個女人只能有一個先生。

Hue-Ling Chen


5885992

1:N (一對多)

一個部門能有多個員工。

一個員工只屬於一個部門。

Hue-Ling Chen


5885992

M:N (多對多)

每個學生可修多門課。

一門課可讓多個學生選修。

Hue-Ling Chen


5885992

關係型態上的屬性

  • 關係型態上也可如實體型態一般擁有屬性。

  • 例 1

Hue-Ling Chen


5885992

關係型態上的屬性 (2)

  • 例 2

Hue-Ling Chen


5885992

例子

  • 每一個學生(Student)記錄,含有SNO、SNAME、SCORE三個欄位。

  • 每個課程(Course)記錄,含有CNO、CNAME、CREDIT三欄位。

  • 每個教授(Faculty)記錄,含有FNO、FNAME、OFFICE三欄位。

  • 每個學生必須選修(Enroll)課程,每門課程需有學生選才開。

  • 每個學生都有一個指導教授,而每個教授可以指導(Advise)許多學生,亦可不收。

  • 每個教授必須開課(Teach),且相同的課程可以由不同的教授講授。

Hue-Ling Chen


5885992

基本名詞

  • 超級鍵(superkey):由一個或多個屬性組合而成的集合,可用來識別實體型態中唯一的實體。

  • 候選鍵(Candidate):最小的superkey,換言之其子集合中不會形成superkey。

  • 主鍵(Primary key):為一候選鍵作為識別唯一實體的依據。

Hue-Ling Chen


5885992

開發資料庫系統的規劃事項 (1)

  • 先確定應用系統所需要的「個體類型」(Entity Type)有哪些?

  • 選課系統

    • 學生(Student)

    • 課程(Course)

    • 老師(Teacher)

Hue-Ling Chen


5885992

開發資料庫系統的規劃事項 (2)

  • 接下來找出個體與個體間會存在資料庫中靜態「關係類型」(Relationship Type),並探討其關係是「一對一」、「一對多」或「多對多」。

  • 每個學生必須選修(Enroll)課程,每門課程需有學生選才開。→「多對多」

  • 每個學生都有一個指導教授,而每個教授可以指導(Advise)許多學生,亦可不收。→「一對多」

  • 每個教授必須開課(Teach),且相同的課程可以由不同的教授講授。 →「一對多」

Hue-Ling Chen


5885992

m

n

Student

Enroll

Advise

Teach

Course

m

n

1

1

Teacher

開發資料庫系統的規劃事項 (3)

  • 繪出「個體—關係圖」(Entity-Relationship Diagram, ERD)。

Hue-Ling Chen


5885992

開發資料庫系統的規劃事項 (4)

  • 檢討「個體—關係圖」中的每個「個體」所需的特性。

  • 每一個學生(Student),含有學號、姓名、級別等特性。

  • 每個課程(Course)記錄,含有課號、課程名稱、開課時間等特性。

  • 每個教授(Faculty)記錄,含有教師編號、姓名、辦公室等特性。

Hue-Ling Chen


5885992

開發資料庫系統的規劃事項 (5)

  • 檢討「個體—關係圖」中的每個「關係類型」所需的特性。

  • 學生選課

    • 「學分數」(credits)

Hue-Ling Chen


5885992

學號

姓名

代號

課名

課號

時間

級別

姓名

學分

m

n

Student

Advise

Teach

Enroll

Course

n

m

Teacher

1

1

辦公室

開發資料庫系統的規劃事項 (6)

  • 在「個體—關係圖」上補上橢圓行代表各種特性。

Hue-Ling Chen


5885992

開發資料庫系統的規劃事項 (7)

  • 針對每一個「個體—關聯圖」中的「個體類型」產生一個關聯表,其中關聯表的屬性即為個體的特性。

Hue-Ling Chen


5885992

開發資料庫系統的規劃事項 (8)

  • 針對每一個「個體—關係圖」中的「關聯類型」也產生一個關聯表。

Hue-Ling Chen


Case 1 1

Case Ⅰ 1:1 移入任何一個

Hue-Ling Chen


Case 1 n n

Case Ⅱ 1:N 移入N的一方

Hue-Ling Chen


5885992

Advise

Teach

Hue-Ling Chen


Case m n

Case Ⅲ M:N 不可移入任何一方

Hue-Ling Chen


5885992

開發資料庫系統的規劃事項 (9)

  • 針對每一個表格的所有屬性,一一檢討下列幾項有關於欄位的內容

    • 意義

    • 類型:整數,字元,日期或圖片。

    • 所佔的位元長度

    • 內容是否要唯一:候選鍵與主鍵的確定。

    • 是否有預設值

    • 是否有範圍限制

    • 是否有格式規範

    • 是否為外來鍵?參考的表格與欄位?外來鍵的使用規格?

Hue-Ling Chen


5885992

繪出整體資料庫的外來鍵參考圖

開發資料庫系統的規劃事項 (10)

Hue-Ling Chen


11 12

開發資料庫系統的規劃事項 (11,12)

  • 規劃各個功能的使用者介面與系統架構圖

  • 對於各個系統的功能,說明要完成該功能的資料庫運算為何

    • 預儲程序(Stored Procedure)

    • 觸發程序(Trigger)

Hue-Ling Chen


5885992

設計個體關聯圖時常犯的錯誤 (1)

  • 扇形陷阱 (Fan Trap)

    • 假設兩個個體類型 A 與 B,在「個體—關係圖 (ERD)」中可以找到一條路徑將它們聯繫起來。

    • 如果存在某些屬於 A 中的個體會聯繫到兩個以上屬於 B 的個體的話,那麼「扇形陷阱」就會出現。

Hue-Ling Chen


Erd error ex

老師

1

1

受教

教授

n

m

學生

Course

ERD (Error ex.)

Hue-Ling Chen


Tables error ex

Tables (Error ex.)

Hue-Ling Chen


Erd correct ex

課程

1

m

受教

教授

n

1

學生

老師

ERD (Correct ex.)

Hue-Ling Chen


Tables correct ex

Tables (Correct ex.)

Hue-Ling Chen


5885992

設計個體關聯圖時常犯的錯誤 (2)

  • 斷層陷阱 (Chasm)

    • 假涉有兩個個體類型 A 與 B,在「個體—關係圖 (ERD)」中可以找到一條路徑將它們聯繫起來。

    • 但是存在某個屬於 A 中的個體無法聯繫到屬於 B 的任何一個個體時,那麼「斷層陷阱」就產生了。

Hue-Ling Chen


Erd error ex1

老師

n

1

擁有

管理

1

m

科系

財產

ERD (Error ex.)

Hue-Ling Chen


Tables error ex1

Tables (Error ex.)

Hue-Ling Chen


Erd correct ex1

老師

n

1

擁有

管理

管理

1

m

m

1

科系

財產

ERD (Correct ex.)

Hue-Ling Chen


Tables correct ex1

Tables (Correct ex.)

Hue-Ling Chen


Tables correct ex more

Tables (Correct ex.) - more

Hue-Ling Chen


5885992

作業

  • 第四章 p4-37

  • 全班五組,星期四 (5/15 討論)

  • 1, 3, 10

  • 2, 4, 11

  • 5, 7, 9

  • 6, 12, 13

  • 8, 申論題

Hue-Ling Chen


5885992

設計一個資料庫系統

  • Follow 規劃事項

  • 10 人一組

  • E-R Model (要有 1-n, n-m relationships)。

  • 由E-R Model圖maps to base tables (指明Foreign Key關係)。

  • 不要有redundant data (要做normalization)。

  • 至少要有3個entities,2個relationships,要有Foreign Key關係(注意Referential Constraint)。

Hue-Ling Chen


5885992

Orders

Bookstores

Books

Hue-Ling Chen


  • Login