37
LOGO โมเดลข้อมูลเชิงสัมพันธ์ (Entity Relationship Model) อาจารย์ ดร.ณัฐพงศ์ วงศ์พร้อมมูล คณะวิศวกรรมศาสตร์และเทคโนโลยีอุตสาหกรรม มหาวิทยาลัยศิลปากร

LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

LOGO โมเดลขอมลเชงสมพนธ (Entity Relationship Model)

อาจารย ดร.ณฐพงศ วงศพรอมมล คณะวศวกรรมศาสตรและเทคโนโลยอตสาหกรรม

มหาวทยาลยศลปากร

Page 2: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

Topic

• แนวคดเกยวกบ E-R Model • จดประสงคของแบบจ าลองเชงแนวคด • ขอดของ E-R Model • แบบจ าลอง E-R Entity-Relationship Model • สวนประกอบของ ER-Model

Page 3: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

แนวคดเกยวกบ E-R Model • แบบจ ำลอง E-R จดเปนแบบจ ำลองเชงแนวคด (Conceptual Data Model) ทใช

แสดงลกษณะโดยรวมของขอมลในระบบ

• Entity-Relationship Model หรอ E-R Model ไดรบควำมนยมอยำงมำก ในกำรออกแบบฐำนขอมลในระดบแนวคด

• โดยน ำเสนอในรปแบบของแผนภำพหรอไดอะแกรม (Diagram) หรอทเรยกวำแผนภำพแสดงควำมสมพนธระหวำงขอมล (Entity Relationship Diagram) หรอ E-R Diagram

• ตองกำรน ำเสนอใหเกดควำมเขำใจระหวำงผออกแบบและผใชงำน

• นกออกแบบฐำนขอมล ซงเปนผ มควำมรเชงเทคนคจะเปนผสรำงแบบจ ำลองเชงแนวคดขนมำใชส ำหรบสอสำรกบผใชเพอใหเกดควำมเขำใจตรงกนในเรองของขอมลทมอยในระบบ

Page 4: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

ขอดของ E-R Model

• มโครงสรำงทงำยตอกำรท ำควำมเขำใจ

• ท ำใหสำมำรถมองเหนภำพรวมของ Entity ทงหมดทมในระบบ

• แสดงควำมสมพนธระหวำง Entity เปนแผนภำพทไมขนกบระบบจดกำรฐำนขอมล (Database Management System; DBMS)

• ไมยดตดกบฮำรดแวรหรอซอฟตแวรใด ๆ

• บคลำกรทเกยวของกบระบบฐำนขอมลสำมำรถเขำใจลกษณะของขอมล และควำมสมพนธระหวำงขอมลไดงำยและถกตองตรงกน

Page 5: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

สวนประกอบของ E-R Model

1. Entity

2. Attributes

3. Relationship

Page 6: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

• Entity หมายถง สงทสนใจ สามารถระบไดในความเปนจรง และตองการเกบรวบรวมขอมลทเกยวของไวในฐานขอมล รวมทงสามารถบงชความเปนเอกลกษณเฉพาะตวได

• Entity ประเภทตาง ๆ มดงน • บคคล (Persons) เชน ลกคำ (Customer), พนกงำน (Employee), นกศกษำ (Student) เปนตน

• สถานท (Place) เชน อำคำร (Building) , หอง (Room), รำนคำ (Store), บรษท (Company) เปนตน

• วตถ (Objects) เชน หนงสอ (Book), ผลตภณฑ (Product), เครองจกร (Machine), รถยนต (Car)

• เหตการณ (Event) เชน กำรลงทะเบยน (Registration), กำรจอง (Reservation), กำรสงซอ (Order), กำรยม(Borrow), กำรคน (Return), กำรขำย (Sales) เปนตน

• แนวความคด (Concepts) เชน บญช (Account), วชำ (Course), สำขำ (Branch) เปนตน

Entity

Page 7: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

• สญลกษณของ Entity

• ใชรปสเหลยมผนผำ (Rectangle)

• มชอก ำกบอยภำยใน

• ชอควรเปนค ำนำม

• ภำษำองกฤษใชตวพมพใหญ

นกศกษา อาจารย ชนเรยน

Entity

Page 8: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

ประเภทของ Entity

1. Regular Entity หรอ Strong Entity • Entity ทสนใจและตองกำรจดเกบขอมลทเกยวของไวในระบบ

ฐำนขอมล • กำรคงอยของ Entity จะไมขนกบ Entity อน • Entity มคณสมบตชเฉพำะ (Identity) ในตวเอง • สญลกษณ Regular Entity

นกศกษา

Page 9: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

2. Weak Entity • Entity ทจะขนอยกบ Entity ชนดอน ๆ ไมสำมำรถเกดขนไดตำมล ำพง • จะมคยหลกจำกกำรสบทอด Entity ทมนพงพงอย มำใชเปนคยหลกหรอ

สวนหนงของคยหลก • ไมสำมำรถเกดขนไดตำมล ำพง และจะถกลบเมอ Entity หลกถกลบออกไป • เชน Entity ผปกครองจะไมสำมำรถปรำกฏอยบนฐำนขอมลไดถำไมม Entity

นกศกษำ • สญลกษณ Weak Entity จะใชสญลกษณรปสเหลยมผนผำแตเปนเสนค

ตวอยำงเชน

สมาชกในครอบครว

ประเภทของ Entity

Page 10: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

การแสดง Weak Entity

พนกงาน สมาชกในครอบครว ม

รหสพนกงาน ชอ

แผนก

รหสพนกงาน ล าดบท

ชอสมาชก

1 M

Page 11: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

รหสพนกงาน ชอ แผนก

1001 นายสมชาย ใจด การตลาด

1002 นางฟาใส วมาน บญช

1003 นายสดด สมบรณ การตลาด

รหสพนกงาน ล าดบท ชอสมาชก

1001 1 นางสมศร ใจด

1001 2 ด.ช.ชศกด ใจด

1002 1 นายองอาจ วมาน

การแสดง Weak Entity

Page 12: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

3. Composite Entity

สรำงขนเพอแปลงควำมสมพนธแบบ M:N มำเปนแบบ 1:N โดยกำรน ำเอำคยหลกของทงสอง Entity ทมควำมสมพนธแบบ M:N มำรวมกบ Attribute อน ๆ ทสนใจ เชน Entity กำรลงทะเบยนเปน Composite Entity ทถกสรำงระหวำง Entity นกศกษำ และวชำ โดย Composite Entity จะแสดงดวยรปสเหลยมผนผำทมรปสเหลยมขนมเปยกปนอยภำยในดวย ดงแสดงในตวอยำง

ประเภทของ Entity

Page 13: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

ตวอยาง Composite Entity

นกศกษำ วชำ กำรลงทะเบยน M 1

รหสนกศกษำ รหสวชำ

รหสนกศกษำ

N 1

รหสวชำ เกรด

Page 14: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

Attribute

• Attribute หรอเรยกวำ Property

• เปนสงทใชอธบำยถงคณลกษณะหรอคณสมบตของ Entity

• เชน Entity ของนกศกษำ จะประกอบดวย Attribute รหสนกศกษำ ชอ-สกล , เพศ , ทอย , เบอรโทร , คณะ , สำขำ ,วชำ , วนทเขำเรยน เปนตน

• สมำชกทอยใน Entity หนง ๆ จะตองม Attribute ทเหมอนกน

• จะใชสญลกษณ วงร (Ellipse) แทน Attribute หนง Attribute และมชอก ำกบภำยในทเปนค ำนำม

Name Address

Page 15: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

Stu_Id

Name

Address Gender Tel

Major STUDENT

STUDENT(Stu_Id, Name, Address, Gender, Tel, Major)

STUDENT

Stu_Id

Name

Address

Gender

Tel

Major

ตวอยางAttributeของ Student Entity

Attribute

Page 16: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

ชนดของ Attribute

1.Simple Attribute หมายถง Attribute ทไมสามารถแบงยอยไดอก เชน อาย เพศ สถานภาพการสมรส

สญลกษณทใชแทนแอตทรบวตแบบธรรมดา

Name Address

Page 17: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

2.Composite Attribute

หมายถง Attribute ทสามารถแบงยอยไดอก เชน Attribute ทอย สามารถแบงเปน Attribute ยอยๆ ได เปน เลขท ถนน อ าเภอ จงหวด

Attribute ชอ สามารถแบงได 2 Simple Attribute คอ Attribute ชอ และ Attribute นามสกล

สญลกษณ Composite Attribute

Composite Attribute_Name

Entity_name

ชนดของ Attribute

Page 18: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

ตวอยาง Composite Attribute

Student Stu_Id

Name

Major Gender Tel

Address

Composite Attribute

เลขท

ถนน

อ าเภอ

จงหวด

รหสไปรษณย

Page 19: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

3.Key Attribute

• หมายถง Attribute หรอกลมของ Attribute ทมคาของขอมลในแตละสมาชกของ Entity ไมซ ากน

• ท าใหสามารถระบความแตกตางของแตละสมาชกใน Entity

• สญลกษณทใช คอรปวงรทภายในมชอของ Attribute ทมการขดเสนใตแทน Key Attribute และเชอมตอ Entity ดวยเสนตรง

Student Stu_Id

ชนดของ Attribute

Page 20: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

Composite Key

Student Code

Name

Address Gender Tel

DOB

Selling BillNo

Prod_ID

Qty SalePrice SaleDate

Cust_ID

Key Attribute

Page 21: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

4. Multivalued Attribute หมายถง Attribute ทสามารถมไดหลายคา เชน คนหนงคนสามารถมวฒการศกษาไดหลายระดบ เชน ปรญญาตร,โท,เอก เปนตน หรอ นกศกษาหนงคนอาจมเบอรโทรศพทไดหลายเบอร โดยจะใชวงรสองวงซอนกนแทน Multivalued Attribute

พนกงาน

รหส

ชอ ทอย

การศกษา

Multivalued Attribute

ชนดของ Attribute

Page 22: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

ปญหาของ Multivalued Attribute คอจะเขยนเปนโครงสรางตารางไดอยางไร?

รหส

ชอ ทอย

การศกษา

แอทรบวตทมหลายคา

รหส ชอ ทอย การศกษา

01 ก อตรดตถ ปรญญาตร

02 ข เชยงใหม ปรญญาตร

01 ก อตรดตถ ปรญญาโท

พนกงาน

ชนดของ Attribute

Page 23: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

พนกงาน

รหส

ชอ ทอย

การศกษา 1

การศกษา 2

การศกษา 3 ตวอยางขอมลทเกดจากการแปลงแอทรบวตทมหลายคาไปเปนแอทรบวตใหมไดหลายตว เพอน าไปสรางขอมลในตาราง

วธท 1 ในการแกปญหาของ Multivalued Attribute

Multivalued Attribute

Page 24: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

วธท 1 ในการแกปญหาของ Multivalued Attribute

รหส

ชอ ทอย

รหส ชอ ทอย การศกษา 1 การศกษา 2 การศกษา 3

01 ก อตรดตถ ปรญญาตร ปรญญาโท

02 ข เชยงใหม ปรญญาตร

03 ค เชยงใหม ปรญญาตร ปรญญาตร

พนกงาน

การศกษา 1

การศกษา 2

การศกษา 3

Multivalued Attribute

Page 25: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

วธท 2 ในการแกปญหาของ Multivalued Attribute

รหส ชอ ทอย รหส การศกษา

01 ก อตรดตถ 01 ปรญญาตร

02 ข เชยงใหม 02 ปรญญาตร

03 ค เชยงใหม 01 ปรญญาโท

รหส

ชอ ทอย

พนกงาน ม การศกษาของพนกงาน

รหส การศกษา

Multivalued Attribute

Page 26: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

5. Derived Attribute คอ Attribute ทไดมาจากการค านวณจาก Attribute อน โดยทวไปไมตองจดเกบ Attribute น เชน Attribute อาย เนองจากสามารถค านวณไดจากวนเดอนปเกด หรอ ยอดรวมของใบเสรจแตละใบ ค านวณไดจากรายการสนคาในใบเสรจ เปนตน

ในแผนภาพ ER จะใชเสนประแทน Derived Attribute

นกศกษา รหส

ชอ

คณะ เพศ วนเดอนปเกด

อาย

ชนดของ Attribute

Page 27: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

Relationship

ความสมพนธ (Relationship) หมายถงความสมพนธระหวางEntity ซ ง เ ปนไปตามชนดของความสมพน ธ โดยความสมพนธจะน าเสนอดวยเหตการณทเชอมโยงใน Entity โดยการตงชอความสมพนธจะใชค ากรยาทแสดงการกระท า เชน ม ,สอน,วาจาง เปนตน

ใน E-R Diagram ใชสญลกษณรปสเหลยมขาวหลามตด (Diamond) ทมชอของความสมพนธนนก ากบอยภายใน

คณะ นกศกษา สงกด

Page 28: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

ลงทะเบยน

• ตวอยาง Relationship ระหวาง Entity นกศกษา กบ Entity รายวชา มความสมพนธ คอ นกศกษาลงทะเบยนเรยนในรายวชานน ๆ

• ตวอยาง นกศกษาจะมความสมพนธกบสาขาวชาทนสตสงกดอย

• จะใชสญลกษณ สเหลยมขาวหลามตดแทน และมการตงชอความสมพนธนนก ากบภายใน โดยชอทก ากบตองเปนค ากรยา

นกศกษา วชา

สงกด นกศกษา คณะ

Relationship

Page 29: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

สงกด

ความสมพนธบงช (Identifying relationship) หมายถงความสมพนธระหวางเอนทตปกต (Strong Entity) กบเอนทตออนแอ (Weak Entity)

ใน E-R Diagram ใชสญลกษณรปสเหลยมขาวหลามตดสองรปซอนกน ทมชอของความสมพนธนนก ากบอยภายใน

สมาชกในครอบครว นกศกษา สงกด

Relationship

Page 30: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

ดกรของความสมพนธ (Degree of a Relationship)

ดกรของความสมพนธ คอ จ านวนเอนทตในการมสวนรวม (Participation) ของความสมพนธระหวางกน ซงจ านวนความสมพนธระหวางเอนทตมอย 3 รปแบบคอ

ระดบของ Relationship จะแสดงดวยจ านวนของ Entity ทสมพนธกน คอ

• Unary relationship เปนควำมสมพนธทม Entity เพยง Entity เดยว

• Binary relationship เปนควำมสมพนธทม Entity เกยวของดวย 2 Entity

• Ternary relationship เปนควำมสมพนธทม Entity เกยวของดวย 3 Entity

Page 31: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

Unary Relationship

พนกงาน จดการ

1. ความสมพนธแบบยนาร Unary relationship เปนความสมพนธทม Entity

เพยง Entity เดยว

ตวอยางเชน ผจดการ <จดการ> พนกงานของตน (ผจดการกคอพนกงาน)

โดยความสมพนธแบบยนาร คอ ความสมพนธแบบรเคอรซพ (Recursive)

Page 32: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

Unary Relationship

Recursive Entity เปน Entity ทเกดจาก Entity เพยง Entity เดยว หรอ ความสมพนธแบบยนาร ซงอาจเปนแบบ 1:1 , 1:M , M:N กได เชน ความสมพนธ พนกงานทเปนผบรหาร ซงหนงคนอาจจะบรหารพนกงานไดหลายคน (ผบรหารกเปนพนกงานเชนเดยวกน)

พนกงำน

บรหำร

1 M

Page 33: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

พนกงำน

แตงงาน

1 1 วชำ

เรยนมากอน

M N

Unary Relationship

Page 34: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

รหสพนกงาน ชอ นามสกล คสมรส

001 นายดนย มงมน 002

002 นางจนดา มงมน 001

003 นายมนส ชดพนา

004 นางสมหญง ภมกต 015

Unary Relationship

Page 35: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

Binary Relationship

2. ความสมพนธแบบไบนาร Binary relationship เปนความสมพนธทม Entity เกยวของดวย 2 Entity เปนความสมพนธทพบไดบอยในฐานขอมล

ตวอยางเชน นกศกษา <ลงทะเบยน> วชา

นกศกษา วชา ลงทะเบยน

Page 36: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

Ternary Relationship

3. ความสมพนธแบบเทอรนาร Ternary relationship เปนความสมพนธทม Entity เกยวของดวย 3 Entity

พนกงาน ต าแหนง ท างาน

สาขา

Page 37: LOGO โมเดลข้อมูลเชิงสัมพันธ์ Entity Relationship Model) · 03 ค เชียงใหม่ 01 ปริญญาโท ... ระหว่างEntity

ควำมสมพนธแบบเทอรนำร สำมำรถแยกมำเปนแบบไบนำรสองชด แตตองไมท ำใหเนอหำหรอขอเทจจรงเปลยนแปลงไป

พนกงาน ต าแหนง ท างาน

สาขา

พนกงาน ต าแหนง ท างาน

พนกงาน สาขา ท างาน

Ternary Relationship