Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
LOGO โมเดลขอมลเชงสมพนธ (Entity Relationship Model)
อาจารย ดร.ณฐพงศ วงศพรอมมล คณะวศวกรรมศาสตรและเทคโนโลยอตสาหกรรม
มหาวทยาลยศลปากร
Topic
• แนวคดเกยวกบ E-R Model • จดประสงคของแบบจ าลองเชงแนวคด • ขอดของ E-R Model • แบบจ าลอง E-R Entity-Relationship Model • สวนประกอบของ ER-Model
แนวคดเกยวกบ E-R Model • แบบจ ำลอง E-R จดเปนแบบจ ำลองเชงแนวคด (Conceptual Data Model) ทใช
แสดงลกษณะโดยรวมของขอมลในระบบ
• Entity-Relationship Model หรอ E-R Model ไดรบควำมนยมอยำงมำก ในกำรออกแบบฐำนขอมลในระดบแนวคด
• โดยน ำเสนอในรปแบบของแผนภำพหรอไดอะแกรม (Diagram) หรอทเรยกวำแผนภำพแสดงควำมสมพนธระหวำงขอมล (Entity Relationship Diagram) หรอ E-R Diagram
• ตองกำรน ำเสนอใหเกดควำมเขำใจระหวำงผออกแบบและผใชงำน
• นกออกแบบฐำนขอมล ซงเปนผ มควำมรเชงเทคนคจะเปนผสรำงแบบจ ำลองเชงแนวคดขนมำใชส ำหรบสอสำรกบผใชเพอใหเกดควำมเขำใจตรงกนในเรองของขอมลทมอยในระบบ
ขอดของ E-R Model
• มโครงสรำงทงำยตอกำรท ำควำมเขำใจ
• ท ำใหสำมำรถมองเหนภำพรวมของ Entity ทงหมดทมในระบบ
• แสดงควำมสมพนธระหวำง Entity เปนแผนภำพทไมขนกบระบบจดกำรฐำนขอมล (Database Management System; DBMS)
• ไมยดตดกบฮำรดแวรหรอซอฟตแวรใด ๆ
• บคลำกรทเกยวของกบระบบฐำนขอมลสำมำรถเขำใจลกษณะของขอมล และควำมสมพนธระหวำงขอมลไดงำยและถกตองตรงกน
สวนประกอบของ E-R Model
1. Entity
2. Attributes
3. Relationship
• 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
• สญลกษณของ Entity
• ใชรปสเหลยมผนผำ (Rectangle)
• มชอก ำกบอยภำยใน
• ชอควรเปนค ำนำม
• ภำษำองกฤษใชตวพมพใหญ
นกศกษา อาจารย ชนเรยน
Entity
ประเภทของ Entity
1. Regular Entity หรอ Strong Entity • Entity ทสนใจและตองกำรจดเกบขอมลทเกยวของไวในระบบ
ฐำนขอมล • กำรคงอยของ Entity จะไมขนกบ Entity อน • Entity มคณสมบตชเฉพำะ (Identity) ในตวเอง • สญลกษณ Regular Entity
นกศกษา
2. Weak Entity • Entity ทจะขนอยกบ Entity ชนดอน ๆ ไมสำมำรถเกดขนไดตำมล ำพง • จะมคยหลกจำกกำรสบทอด Entity ทมนพงพงอย มำใชเปนคยหลกหรอ
สวนหนงของคยหลก • ไมสำมำรถเกดขนไดตำมล ำพง และจะถกลบเมอ Entity หลกถกลบออกไป • เชน Entity ผปกครองจะไมสำมำรถปรำกฏอยบนฐำนขอมลไดถำไมม Entity
นกศกษำ • สญลกษณ Weak Entity จะใชสญลกษณรปสเหลยมผนผำแตเปนเสนค
ตวอยำงเชน
สมาชกในครอบครว
ประเภทของ Entity
การแสดง Weak Entity
พนกงาน สมาชกในครอบครว ม
รหสพนกงาน ชอ
แผนก
รหสพนกงาน ล าดบท
ชอสมาชก
1 M
รหสพนกงาน ชอ แผนก
1001 นายสมชาย ใจด การตลาด
1002 นางฟาใส วมาน บญช
1003 นายสดด สมบรณ การตลาด
รหสพนกงาน ล าดบท ชอสมาชก
1001 1 นางสมศร ใจด
1001 2 ด.ช.ชศกด ใจด
1002 1 นายองอาจ วมาน
การแสดง Weak Entity
3. Composite Entity
สรำงขนเพอแปลงควำมสมพนธแบบ M:N มำเปนแบบ 1:N โดยกำรน ำเอำคยหลกของทงสอง Entity ทมควำมสมพนธแบบ M:N มำรวมกบ Attribute อน ๆ ทสนใจ เชน Entity กำรลงทะเบยนเปน Composite Entity ทถกสรำงระหวำง Entity นกศกษำ และวชำ โดย Composite Entity จะแสดงดวยรปสเหลยมผนผำทมรปสเหลยมขนมเปยกปนอยภำยในดวย ดงแสดงในตวอยำง
ประเภทของ Entity
ตวอยาง Composite Entity
นกศกษำ วชำ กำรลงทะเบยน M 1
รหสนกศกษำ รหสวชำ
รหสนกศกษำ
N 1
รหสวชำ เกรด
Attribute
• Attribute หรอเรยกวำ Property
• เปนสงทใชอธบำยถงคณลกษณะหรอคณสมบตของ Entity
• เชน Entity ของนกศกษำ จะประกอบดวย Attribute รหสนกศกษำ ชอ-สกล , เพศ , ทอย , เบอรโทร , คณะ , สำขำ ,วชำ , วนทเขำเรยน เปนตน
• สมำชกทอยใน Entity หนง ๆ จะตองม Attribute ทเหมอนกน
• จะใชสญลกษณ วงร (Ellipse) แทน Attribute หนง Attribute และมชอก ำกบภำยในทเปนค ำนำม
Name Address
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
ชนดของ Attribute
1.Simple Attribute หมายถง Attribute ทไมสามารถแบงยอยไดอก เชน อาย เพศ สถานภาพการสมรส
สญลกษณทใชแทนแอตทรบวตแบบธรรมดา
Name Address
2.Composite Attribute
หมายถง Attribute ทสามารถแบงยอยไดอก เชน Attribute ทอย สามารถแบงเปน Attribute ยอยๆ ได เปน เลขท ถนน อ าเภอ จงหวด
Attribute ชอ สามารถแบงได 2 Simple Attribute คอ Attribute ชอ และ Attribute นามสกล
สญลกษณ Composite Attribute
Composite Attribute_Name
Entity_name
ชนดของ Attribute
ตวอยาง Composite Attribute
Student Stu_Id
Name
Major Gender Tel
Address
Composite Attribute
เลขท
ถนน
อ าเภอ
จงหวด
รหสไปรษณย
3.Key Attribute
• หมายถง Attribute หรอกลมของ Attribute ทมคาของขอมลในแตละสมาชกของ Entity ไมซ ากน
• ท าใหสามารถระบความแตกตางของแตละสมาชกใน Entity
• สญลกษณทใช คอรปวงรทภายในมชอของ Attribute ทมการขดเสนใตแทน Key Attribute และเชอมตอ Entity ดวยเสนตรง
Student Stu_Id
ชนดของ Attribute
Composite Key
Student Code
Name
Address Gender Tel
DOB
Selling BillNo
Prod_ID
Qty SalePrice SaleDate
Cust_ID
Key Attribute
4. Multivalued Attribute หมายถง Attribute ทสามารถมไดหลายคา เชน คนหนงคนสามารถมวฒการศกษาไดหลายระดบ เชน ปรญญาตร,โท,เอก เปนตน หรอ นกศกษาหนงคนอาจมเบอรโทรศพทไดหลายเบอร โดยจะใชวงรสองวงซอนกนแทน Multivalued Attribute
พนกงาน
รหส
ชอ ทอย
การศกษา
Multivalued Attribute
ชนดของ Attribute
ปญหาของ Multivalued Attribute คอจะเขยนเปนโครงสรางตารางไดอยางไร?
รหส
ชอ ทอย
การศกษา
แอทรบวตทมหลายคา
รหส ชอ ทอย การศกษา
01 ก อตรดตถ ปรญญาตร
02 ข เชยงใหม ปรญญาตร
01 ก อตรดตถ ปรญญาโท
พนกงาน
ชนดของ Attribute
พนกงาน
รหส
ชอ ทอย
การศกษา 1
การศกษา 2
การศกษา 3 ตวอยางขอมลทเกดจากการแปลงแอทรบวตทมหลายคาไปเปนแอทรบวตใหมไดหลายตว เพอน าไปสรางขอมลในตาราง
วธท 1 ในการแกปญหาของ Multivalued Attribute
Multivalued Attribute
วธท 1 ในการแกปญหาของ Multivalued Attribute
รหส
ชอ ทอย
รหส ชอ ทอย การศกษา 1 การศกษา 2 การศกษา 3
01 ก อตรดตถ ปรญญาตร ปรญญาโท
02 ข เชยงใหม ปรญญาตร
03 ค เชยงใหม ปรญญาตร ปรญญาตร
พนกงาน
การศกษา 1
การศกษา 2
การศกษา 3
Multivalued Attribute
วธท 2 ในการแกปญหาของ Multivalued Attribute
รหส ชอ ทอย รหส การศกษา
01 ก อตรดตถ 01 ปรญญาตร
02 ข เชยงใหม 02 ปรญญาตร
03 ค เชยงใหม 01 ปรญญาโท
รหส
ชอ ทอย
พนกงาน ม การศกษาของพนกงาน
รหส การศกษา
Multivalued Attribute
5. Derived Attribute คอ Attribute ทไดมาจากการค านวณจาก Attribute อน โดยทวไปไมตองจดเกบ Attribute น เชน Attribute อาย เนองจากสามารถค านวณไดจากวนเดอนปเกด หรอ ยอดรวมของใบเสรจแตละใบ ค านวณไดจากรายการสนคาในใบเสรจ เปนตน
ในแผนภาพ ER จะใชเสนประแทน Derived Attribute
นกศกษา รหส
ชอ
คณะ เพศ วนเดอนปเกด
อาย
ชนดของ Attribute
Relationship
ความสมพนธ (Relationship) หมายถงความสมพนธระหวางEntity ซ ง เ ปนไปตามชนดของความสมพน ธ โดยความสมพนธจะน าเสนอดวยเหตการณทเชอมโยงใน Entity โดยการตงชอความสมพนธจะใชค ากรยาทแสดงการกระท า เชน ม ,สอน,วาจาง เปนตน
ใน E-R Diagram ใชสญลกษณรปสเหลยมขาวหลามตด (Diamond) ทมชอของความสมพนธนนก ากบอยภายใน
คณะ นกศกษา สงกด
ลงทะเบยน
• ตวอยาง Relationship ระหวาง Entity นกศกษา กบ Entity รายวชา มความสมพนธ คอ นกศกษาลงทะเบยนเรยนในรายวชานน ๆ
• ตวอยาง นกศกษาจะมความสมพนธกบสาขาวชาทนสตสงกดอย
• จะใชสญลกษณ สเหลยมขาวหลามตดแทน และมการตงชอความสมพนธนนก ากบภายใน โดยชอทก ากบตองเปนค ากรยา
นกศกษา วชา
สงกด นกศกษา คณะ
Relationship
สงกด
ความสมพนธบงช (Identifying relationship) หมายถงความสมพนธระหวางเอนทตปกต (Strong Entity) กบเอนทตออนแอ (Weak Entity)
ใน E-R Diagram ใชสญลกษณรปสเหลยมขาวหลามตดสองรปซอนกน ทมชอของความสมพนธนนก ากบอยภายใน
สมาชกในครอบครว นกศกษา สงกด
Relationship
ดกรของความสมพนธ (Degree of a Relationship)
ดกรของความสมพนธ คอ จ านวนเอนทตในการมสวนรวม (Participation) ของความสมพนธระหวางกน ซงจ านวนความสมพนธระหวางเอนทตมอย 3 รปแบบคอ
ระดบของ Relationship จะแสดงดวยจ านวนของ Entity ทสมพนธกน คอ
• Unary relationship เปนควำมสมพนธทม Entity เพยง Entity เดยว
• Binary relationship เปนควำมสมพนธทม Entity เกยวของดวย 2 Entity
• Ternary relationship เปนควำมสมพนธทม Entity เกยวของดวย 3 Entity
Unary Relationship
พนกงาน จดการ
1. ความสมพนธแบบยนาร Unary relationship เปนความสมพนธทม Entity
เพยง Entity เดยว
ตวอยางเชน ผจดการ <จดการ> พนกงานของตน (ผจดการกคอพนกงาน)
โดยความสมพนธแบบยนาร คอ ความสมพนธแบบรเคอรซพ (Recursive)
Unary Relationship
Recursive Entity เปน Entity ทเกดจาก Entity เพยง Entity เดยว หรอ ความสมพนธแบบยนาร ซงอาจเปนแบบ 1:1 , 1:M , M:N กได เชน ความสมพนธ พนกงานทเปนผบรหาร ซงหนงคนอาจจะบรหารพนกงานไดหลายคน (ผบรหารกเปนพนกงานเชนเดยวกน)
พนกงำน
บรหำร
1 M
พนกงำน
แตงงาน
1 1 วชำ
เรยนมากอน
M N
Unary Relationship
รหสพนกงาน ชอ นามสกล คสมรส
001 นายดนย มงมน 002
002 นางจนดา มงมน 001
003 นายมนส ชดพนา
004 นางสมหญง ภมกต 015
Unary Relationship
Binary Relationship
2. ความสมพนธแบบไบนาร Binary relationship เปนความสมพนธทม Entity เกยวของดวย 2 Entity เปนความสมพนธทพบไดบอยในฐานขอมล
ตวอยางเชน นกศกษา <ลงทะเบยน> วชา
นกศกษา วชา ลงทะเบยน
Ternary Relationship
3. ความสมพนธแบบเทอรนาร Ternary relationship เปนความสมพนธทม Entity เกยวของดวย 3 Entity
พนกงาน ต าแหนง ท างาน
สาขา
ควำมสมพนธแบบเทอรนำร สำมำรถแยกมำเปนแบบไบนำรสองชด แตตองไมท ำใหเนอหำหรอขอเทจจรงเปลยนแปลงไป
พนกงาน ต าแหนง ท างาน
สาขา
พนกงาน ต าแหนง ท างาน
พนกงาน สาขา ท างาน
Ternary Relationship