slide1
Download
Skip this Video
Download Presentation
個體 — 關聯模式

Loading in 2 Seconds...

play fullscreen
1 / 59

個體 — 關聯模式 - PowerPoint PPT Presentation


  • 96 Views
  • Uploaded on

個體 — 關聯模式. 資料庫系統之理論與實務 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.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' 個體 — 關聯模式' - nicholai-dima


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
slide1

個體—關聯模式

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

Hue-Ling Chen

slide4
專有名詞
  • 實體(Entity):代表真實世界中的一個事物或觀念。
  • 屬性(Attribute):描述實體之個別特性。
  • 實體集(Entity Set):一群擁有相同屬性的實體。
  • 關係(Relationship):數個實體間的聯結(Associate)。
  • 關係集(Relationship Set):同類型關係的集合。

Hue-Ling Chen

slide5

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

slide6
E-R圖和自然語言的對應關係
  • 名詞:一個句子的主詞/受詞,對應到實體型態。
  • 形容詞:修飾名詞的形容詞,對應到實體型態上的屬性。
  • 動詞:聯繫主詞/受詞,對應到關係型態。
  • 副詞:修飾動詞,對應到關係型態上的屬性。

Hue-Ling Chen

slide7

張三

年齡

性別

Hue-Ling Chen

slide8

年資

工作

Hue-Ling Chen

slide9

部門

名稱

代號

Hue-Ling Chen

slide10
個體—關聯模式中的概念 (1)
  • 「語意資料模式」→資料的分析與規劃
  • 「個體關聯圖」→系統分析與邏輯資料庫設計的工具,系統分析師與使用者的溝通介面。
  • 個體(實體,Entities):例子:員工與家屬的資料
    • 強個體型態:一實體型態決定另一實體的存在於否。
    • 弱個體型態:一實體型態是依賴另一實體型態而存在,沒有充分的屬性構成主鍵。
    • 存在相依(existence-dependence):一個實體的存在與否,是由其它實體決定。

Hue-Ling Chen

slide12
個體—關聯模式中的概念 (2)
  • 個體類型
    • 同一類型的個體組成一個個體類型(Entity Type)
  • 特性
    • 單一特性或複合特性
    • 鍵值
    • 單一值、多重值或一個不確定的虛值
    • 基本特性或導出的特性

Hue-Ling Chen

slide13

學生

大學部

研究生

碩士班

博士班

個體—關聯模式中的概念 (3)
  • 個體與個體之間的關係
    • 一對一、一對多、多對多
    • 弱勢關係
  • 子類型(Subtypes):演變成「物件導向模式」的基礎。

Hue-Ling Chen

slide16
屬性的型態 (1)
  • 簡單vs.複合屬性
    • 簡單屬性:一屬性不能再被分割。
    • 複合屬性:一屬性可被分割成數個具有含意的屬性。

Hue-Ling Chen

slide17
屬性的型態 (2)
  • 單值屬性vs.多值屬性
    • 單值屬性:對一個實體而言,若其某一屬性僅有一個內含值,則該屬性稱之為單值屬性。
      • 例子: 年紀為單值屬性
    • 多值屬性:若屬性的內含值有多種可能值,則稱該屬性為多值屬性。
      • 例子: 聯絡電話為多值屬性

Hue-Ling Chen

slide18

id

書名

價錢

出版商

作者

Books

Hue-Ling Chen

slide19
屬性的型態 (3)
  • 衍生屬性:屬性的內含值可由其它的屬性得知。
  • Stored attribute:可推演出衍生屬性的屬性。
    • 例子: 年紀可由出生日期推算而來。

衍生屬性

Stored attribute

Hue-Ling Chen

slide20
例子:

Hue-Ling Chen

slide21
弱實體型態與辨認關係型態
  • 辨認擁有者(Identifying Owner):
    • 弱實體型態依附強實體型態而存在,強實體型態為弱實體型態之辨認擁有者。
  • 辨認關係型態(Identifying Relationship):
    • 弱實體型態與其擁有者之間的關係型態。

Hue-Ling Chen

mapping cardinality cardinality ratio
映射大小(Mapping Cardinality、Cardinality Ratio)
  • 透過關係型態,描述一個實體型態中的實體與其它實體型態中有多少實體連結。
    • 1:1(一對一)
    • 1:N(一對多)
    • N:M(多對多)

Hue-Ling Chen

slide24
1:1(一對一)

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

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

Hue-Ling Chen

slide25
1:N (一對多)

一個部門能有多個員工。

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

Hue-Ling Chen

slide26
M:N (多對多)

每個學生可修多門課。

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

Hue-Ling Chen

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

Hue-Ling Chen

slide29
例子
  • 每一個學生(Student)記錄,含有SNO、SNAME、SCORE三個欄位。
  • 每個課程(Course)記錄,含有CNO、CNAME、CREDIT三欄位。
  • 每個教授(Faculty)記錄,含有FNO、FNAME、OFFICE三欄位。
  • 每個學生必須選修(Enroll)課程,每門課程需有學生選才開。
  • 每個學生都有一個指導教授,而每個教授可以指導(Advise)許多學生,亦可不收。
  • 每個教授必須開課(Teach),且相同的課程可以由不同的教授講授。

Hue-Ling Chen

slide30
基本名詞
  • 超級鍵(superkey):由一個或多個屬性組合而成的集合,可用來識別實體型態中唯一的實體。
  • 候選鍵(Candidate):最小的superkey,換言之其子集合中不會形成superkey。
  • 主鍵(Primary key):為一候選鍵作為識別唯一實體的依據。

Hue-Ling Chen

slide31
開發資料庫系統的規劃事項 (1)
  • 先確定應用系統所需要的「個體類型」(Entity Type)有哪些?
  • 選課系統
    • 學生(Student)
    • 課程(Course)
    • 老師(Teacher)

Hue-Ling Chen

slide32
開發資料庫系統的規劃事項 (2)
  • 接下來找出個體與個體間會存在資料庫中靜態「關係類型」(Relationship Type),並探討其關係是「一對一」、「一對多」或「多對多」。
  • 每個學生必須選修(Enroll)課程,每門課程需有學生選才開。→「多對多」
  • 每個學生都有一個指導教授,而每個教授可以指導(Advise)許多學生,亦可不收。→「一對多」
  • 每個教授必須開課(Teach),且相同的課程可以由不同的教授講授。 →「一對多」

Hue-Ling Chen

slide33

m

n

Student

Enroll

Advise

Teach

Course

m

n

1

1

Teacher

開發資料庫系統的規劃事項 (3)
  • 繪出「個體—關係圖」(Entity-Relationship Diagram, ERD)。

Hue-Ling Chen

slide34
開發資料庫系統的規劃事項 (4)
  • 檢討「個體—關係圖」中的每個「個體」所需的特性。
  • 每一個學生(Student),含有學號、姓名、級別等特性。
  • 每個課程(Course)記錄,含有課號、課程名稱、開課時間等特性。
  • 每個教授(Faculty)記錄,含有教師編號、姓名、辦公室等特性。

Hue-Ling Chen

slide35
開發資料庫系統的規劃事項 (5)
  • 檢討「個體—關係圖」中的每個「關係類型」所需的特性。
  • 學生選課
    • 「學分數」(credits)

Hue-Ling Chen

slide36

學號

姓名

代號

課名

課號

時間

級別

姓名

學分

m

n

Student

Advise

Teach

Enroll

Course

n

m

Teacher

1

1

辦公室

開發資料庫系統的規劃事項 (6)
  • 在「個體—關係圖」上補上橢圓行代表各種特性。

Hue-Ling Chen

slide37
開發資料庫系統的規劃事項 (7)
  • 針對每一個「個體—關聯圖」中的「個體類型」產生一個關聯表,其中關聯表的屬性即為個體的特性。

Hue-Ling Chen

slide38
開發資料庫系統的規劃事項 (8)
  • 針對每一個「個體—關係圖」中的「關聯類型」也產生一個關聯表。

Hue-Ling Chen

slide41

Advise

Teach

Hue-Ling Chen

slide43
開發資料庫系統的規劃事項 (9)
  • 針對每一個表格的所有屬性,一一檢討下列幾項有關於欄位的內容
    • 意義
    • 類型:整數,字元,日期或圖片。
    • 所佔的位元長度
    • 內容是否要唯一:候選鍵與主鍵的確定。
    • 是否有預設值
    • 是否有範圍限制
    • 是否有格式規範
    • 是否為外來鍵?參考的表格與欄位?外來鍵的使用規格?

Hue-Ling Chen

11 12
開發資料庫系統的規劃事項 (11,12)
  • 規劃各個功能的使用者介面與系統架構圖
  • 對於各個系統的功能,說明要完成該功能的資料庫運算為何
    • 預儲程序(Stored Procedure)
    • 觸發程序(Trigger)

Hue-Ling Chen

slide46
設計個體關聯圖時常犯的錯誤 (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

slide51
設計個體關聯圖時常犯的錯誤 (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

slide57
作業
  • 第四章 p4-37
  • 全班五組,星期四 (5/15 討論)
  • 1, 3, 10
  • 2, 4, 11
  • 5, 7, 9
  • 6, 12, 13
  • 8, 申論題

Hue-Ling Chen

slide58
設計一個資料庫系統
  • 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

slide59

Orders

Bookstores

Books

Hue-Ling Chen

ad