การเปลี่ยนจาก E-R Diagram เป็นโมเดลเชิงสัมพันธ์ (ตารางข้อมูล)
วิธีการเปลี่ยนจาก E-R Diagram เป็นตารางข้อมูล 1. กรณี E-R เป็น Strong Entity และ Attribute เป็นแบบ simple Attribute สามารถเปลี่ยนเป็นตารางได้เลย โดยมีจำนวนคอลัมน์ ของตาราง ตามจำนวน Attribute ของเอนทิตี้ sname SID GPA ตาราง Student Student SID sname GPA 24/11/61
2. กรณี Entity เป็นแบบStrong Entity แต่ Attribute เป็นแบบ Composite Attribute วิธีการ ให้นำ Attributeย่อยที่อยู่ในcomposite attribute ออกเป็น Attribute ของตารางได้เลย Firstname Lastname sname SID GPA Student 24/11/61
Firstname Lastname sname SID GPA Student ตาราง Student SID Firstname 24/11/61
3 กรณี E-R เป็น Strong Entity และ Attribute เป็น Multivalue ให้นำค่า Attribute ที่เป็น Multivalue แยกออกมาสร้างเป็นตารางใหม่ พร้อมกำหนดให้ เป็น primarykey และ นำค่าprimary key ของ แอนทิตี้เดิมมารวมกับตารางใหม่ด้วย Firstname Lastname sname SID GPA Student Tel 24/11/61
Firstname Lastname sname SID GPA Student Tel SID Firstname Lastname 24/11/61
4. กรณี Entity เป็น Weak Entity ให้นำ Attribute ทีทำหน้าที่เป็น คีย์หลักของ Strong Entity ที่ Weak Entity นั้นมีความสัมพันธ์อยู่ มารวมกับ Attribute ของ Weak Entity พร้อมทั้งกำหนดให้เป็นค่า primary key ของตารางด้วย 24/11/61
EmpID Ename T_In Salary TDate T_Out Time Stamp ตาราง Employee EmpID 24/11/61
การเปลี่ยนE-R Diagram ที่มีความสัมพันธ์เป็นตาราง 1 Many to Many 2. One to Many 3. One to One 24/11/61
1. Many To Many 1.นำ ความสัมพันธ์มาสร้าง เป็นตารางใหม่ โดยนำ Primary key ของเอนทิตี้ ที่มีความสัมพันธ์กับ ความสัมพันธ์ มากำหนดเป็น attributeของตาราง 2. กำหนดให้ Primary key ที่นำมารวม กำหนดเป็น Primary key ของตารางใหม่ด้วย Grade SID SName CID CName M M Take Course student 24/11/61
Student SID sname Take SID CID Grade Course CID Cname 24/11/61
2.ความสัมพันธ์เป็นแบบหนึ่งต่อกลุ่ม (1:M) 1.ให้นำค่า Primary key ของ เอนทิตี้ที่มีความสัมพันธ์ทางด้านที่เป็น 1 มาเป็น attribute ด้าน M โดยไม่ต้องมีการสร้างตารางของความสัมพันธ์ขึ้นมาใหม่ 24/11/61
MID mname SID sname GPA Major 1 M Have Student 24/11/61
Student (M) SID sname GPA MID Major(1) MID mname 24/11/61
3.ความสัมพันธ์เป็นแบบหนึ่งต่อหนึ่ง (1:1) ให้นำ primary key ของเอนทิตี้ที่มีความสัมพันธ์กัน มาเป็นattribute ของอีก เอนทิตี้ โดยจะทำจากเอนทิตี้ด้านใดก็ได้ rname sname RID SID 1 1 Room student Leader 24/11/61
student SID sname RID Room RID rname 24/11/61
หรือ student SID sname Room RID rname SID 24/11/61
สรุปสัญลักษณ์ E-R Diagram
ER-Model ตามแบบของ Peter Pin Shan Chen 4.19 สัญลักษณ์ของ ER Model สัญลักษณ์ ความหมาย สี่เหลี่ยมผืนผ้า เอนติตี้ เอนติติ้แบบอ่อน (Weak Entity) ความสัมพันธ์ ER-Model ตามแบบของ Peter Pin Shan Chen 24/11/61 Database Management System
สัญลักษณ์ของ ER model(ต่อ) 4.20 สัญลักษณ์ของ ER model(ต่อ) สัญลักษณ์ ความหมาย ความสัมพันธ์แบบอ่อน (Weak Relationship) แอตทริบิวต์ แอตทริบิวต์ที่เป็น primary key 24/11/61 Database Management System
สัญลักษณ์ของ ER Model(ต่อ) 4.21 สัญลักษณ์ของ ER Model(ต่อ) สัญลักษณ์ ความหมาย แอตทริบิวต์ที่มีหลายค่า แอตทริบิวต์ประกอบ (แอตทริบิวต์ด้านบนเป็นส่วนประกอบของแอตทริบิวต์ด้านล่าง) Partial Key เป็น key ของ weak entity ซึ่งค่า partial key ซ้ำกันได้ 24/11/61 Database Management System
สัญลักษณ์ของ ER model(ต่อ) 4.22 สัญลักษณ์ของ ER model(ต่อ) สัญลักษณ์ ความหมาย ดีไรฟ์แอตทริบิ่วต์(derived attribute) เก็บผลของการคำนวณหรือแปลงค่ามาจากแอตทริบิวเดิม 24/11/61 Database Management System
ตัวอย่าง E-R การเรียนการสอน ระบบการเรียนการสอนของมหาวิทยาลัยแห่งหนึ่ง ต้องการจัดทำฐานข้อมูลที่ประกอบไปด้วย ข้อมูลนักศึกษาซึ่งประกอบไปด้วย รหัสนักศึกษา, ชื่อ, สกุล, เกรดเฉลี่ย ข้อมูลวิชา ประกอบไปด้วย รหัสวิชา ชื่อวิชา หน่วยกิต อาจารย์ รหัสอาจารย์ ชื่อ สกุล ตำแหน่ง โดยมีเงื่อนไข ความสัมพันธ์ระหว่างเอนทิตี้ดังนี้ -นักศึกษาเรียนได้หลายๆ วิชาในแต่ละเทอม แต่ละปีการศึกษา เมื่อสิ้นเทอม อาจารย์ออกผลการเรียน -อาจารย์สามารถสอนได้หลายๆวิชาแต่ละวิชา สามารถถูกสอนโดยอาจารย์ได้หลายคน 24/11/61
จาก E-R การเรียนการสอน สามารถแปลงเป็น relation ได้ดังนี้
นักศึกษา รหัสนศ ชื่อ นามสกุล เกรดเฉลี่ย เรียน รหัสนศ รหัสวิชา เทอม ปี ผล วิชา รหัสวิชา ชื่อวิชา หน่วยกิต สอน รหัสวิชา รหัสอาจารย์ เทอม ปี อาจารย์ รหัสอาจารย์ ชื่อ สกุล ตำแหน่ง 24/11/61
การบ้าน จงบอกความหมายของ strong Entity และ weak Entity พร้อมยกตัวอย่าง จงอธิบายความหมายของ คำต่อไปนี้ 1.Attribute Domain 2.Simple Attribute 3. Composite Attribute 4. Single-valued Attribute 5.Multi-valued Attribute 6. Derived Attribute 24/11/61
จงวิเคราะห์ระบบงานพยาบาล จากกรณีศึกษาต่อไปนี้ คณะพยาบาลศาสตร์ต้องการพัฒนาฐานข้อมูลหอพักนักศึกษาพยาบาลขึ้น เพื่อใช้เก็บข้อมูลต่างๆ ที่เกี่ยวกับการพักในหอพักมหาวิทยาลัยของนักศึกษาพยาบาล 2 หลักสูตร โดยนักศึกษาแต่ละท่านต้องพักในหอพักของมหาวิทยาลัยตลอดหลักสูตร ในแต่ละปีการศึกษาจะเข้าอยู่ได้เพียง 1 ห้อง ของหอพัก ข้อมูลนักศึกษาที่ต้องการจัดเก็บ จะประกอบด้วย รหัสนักศึกษา ชื่อ-สกุล วันเดือนปีเกิด ที่อยู่ เบอร์โทรศัพท์ หลักสูตร ห้องพักแต่ละห้องจะมีนักศึกษาพักอยู่ได้หลายคน ข้อมูลห้องพักที่ต้องการจัดเก็บจะประกอบด้วย รหัสห้อง หมายเลขห้อง ชื่ออาคาร ชั้น หมายเลขโทรศัพท์ภายใน หอพักแต่ละหอมีห้องพักได้หลายห้องและห้องพักแต่ละห้องเป็นของหอพัก 1 หอพัก สำหรับข้อมูลหอพักจะประกอบด้วย รหัสหอพัก ชื่อหอพัก ที่อยู่ หมายเลขโทรศัพท์ 24/11/61
จากกรณีศึกษาดังกล่าว จงตอบคำถามต่อไปนี้ 1. จงออกแบบฐานข้อมุลด้วย E-R Diagram ว่าประกอบไปด้วย Entity อะไรบ้างและแต่ละ Entity มี Attribute อะไรบ้าง ซึ่งภายในE-R Diagram จะต้องระบุชนิดความสัมพันธ์ระหว่าง Enitiy 2. แปลงโมเดลข้อมูลแบบ E-R เป็นโมเดลฐานข้อมูลเชิงสัมพันธ์(ตาราง) 24/11/61
แหล่งข้อมูลอ้างอิง Nguyen Kim Anh.Data Modeling Using Entity-Relationship Model available http://cnx.org/content/m28139/latest/ 24/11/61