Entity – Relationship Model
องค์ประกอบของ ER Model เอนทิตี้(Entity) แอททริบิวต์(Attribute) ความสัมพันธ์(Relationship)
Entity หมายถึง กลุ่มของสิ่งต่างๆ ที่ต้องการจัดเก็บข้อมูลไว้ในฐานข้อมูล สิ่งมีชีวิต เช่น พนักงาน , ลูกค้า , นักศึกษา , อาจารย์ , สมาชิก , สุนัข , พืช , สัตว์ ฯลฯ สถานที่ เช่น อาคาร , สาขา , ห้องเรียน , หน่วยงาน ฯลฯ วัตถุ เช่น หนังสือ , เครื่องยนต์ , สินค้า , อุปกรณ์ ฯลฯ เหตุการณ์ เช่น การเช่า , การสั่งซื้อ , การลงทะเบียน ฯลฯ แนวคิด เช่น บัญชี , วิชาเรียน , หลักสูตร ฯลฯ การสั่งซื้อ
เอนทิตี้แบบปกติ Entity Name STUDENT PRODUCT สัญลักษณ์ที่ใช้แทน เอนทิตี้แบบปกติ Entity Name STUDENT PRODUCT
ตัวอย่างเอนทิตี้ พนักงาน ผู้รับผลประโยชน์ 1 N มีความสัมพันธ์ รหัส ชื่อ นามสกุล ที่อยู่ S1 วนิดา สุขสันต์ S2 สมชาย รักดี S3 จริงใจ รักชีพ S4 สถาพร ช่วงโชติ S5 จิราพร แก้วมณี อุดรธานี กรุงเทพฯ เชียงใหม่ ภูเก็ต S6 ลินดา ใจอ่อน S7 จิระศักดิ์ ปานพุ่ม ระยอง ชื่อ นามสกุล ความสัมพันธ์ สุดาวัลย์ สุขสันต์ วิภา รักดี จันจิรา รักชีพ สมชาย สุขสม บุตรสาว ภรรยา บิดา แก้วมณี สามี นิโคล ปานพุ่ม
Attribute แอททริบิวต์ หมายถึง คุณสมบัติ หรือ คุณลักษณะ ที่ใช้อธิบายรายละเอียดของเอนทิตี้ และ ความสัมพันธ์ ตัวอย่าง เอนทีตี้ “นักศึกษา” ประกอบด้วยข้อมูล “รหัสนักศึกษา , ชื่อ ,นามสกุล , ที่อยู่ , วันเกิด , อายุ , เกรดเฉลี่ยสะสม” ตัวอย่าง เอนทีตี้ “สินค้า” ประกอบด้วยข้อมูล “รหัสสินค้า , ชื่อสินค้า , ราคาต่อหน่วย , จำนวนคงเหลือ”
ประเภท Attribute Simple Attribute หรือ Atomic Attribute Composite Attribute Single-value Attribute Multivalued Attribute Derived Attribute
Atomic/Simple Attribute หมายถึง แอททริบิวต์ที่ไม่มีการแยกออกเป็นแอททริบิวต์ย่อยๆ อีก เช่น รหัสนักศึกษา , เงินเดือน , เกรดเป็นต้น รหัสนักศึกษา Attribute Name เงินเดือน
Composite Attribute หมายถึง แอททริบิวต์ที่สามารถแยกออกเป็นแอททริบิวต์ย่อยออกไปอีก เช่น ที่อยู่ ประกอบด้วย บ้านเลขที่ , ถนน , ตำบล , อำเภอ , จังหวัด , รหัสไปรษณีย์ ที่อยู่ บ้านเลขที่ ถนน ตำบล อำเภอ จังหวัด รหัสไปรษณีย์ Attr. name Attribute Name
Single value Attribute หมายถึง แอททริบิวต์ที่มีค่าข้อมูลได้เพียงค่าเดียวในแต่ละ แอททริบิวต์ สำหรับแต่ละรายการข้อมูล ถ้ากำหนดให้เป็นกุญแจหลัก(Primary key) ให้ขีดเส้นใต้ทึบที่ใต้ชื่อแอททริบิวต์ Primary key Attribute Attribute Name ชื่อ รหัสนักศึกษา
Multivalued Attribute หมายถึง แอททริบิวต์ที่สามารถกำหนดค่าข้อมูลได้มากกว่า 1 ค่า สำหรับข้อมูลแต่ละรายการ เช่น พนักงานแต่ละคนสามารถมีความสามารถพิเศษได้หลายอย่าง พิมพ์ดีด ขับรถยนต์ พิมพ์ดีด ภาษาจีน คอมพิวเตอร์ สมชาย วันดี <ชื่อ Attr.> ความสามารถพิเศษ
Derived Attribute หมายถึง แอททริบิวต์ที่ค่าของแอททริบิวต์ประกอบขึ้นหรือคำนวณค่าจากค่าของแอททริบิวต์อื่น เช่น อายุ คำนวณจาก วันเกิด วันเกิด Attribute Name อายุ นักศึกษา
Entity & Attribute นักศึกษา ที่อยู่ นามสกุล วันเกิด ชื่อ อายุ โทรศัพท์ รหัสนักศึกษา ชื่อ นามสกุล ที่อยู่ บ้านเลขที่ ถนน ตำบล อำเภอ จังหวัด รหัสไปรษณีย์ วันเกิด อายุ โทรศัพท์
STUDENT Student_ID : 63812489101 Student_Name : วันดี ใจสะอาด Address : 45/2 ถ.อุดรดุษฎี ต.หมากแข้ง อ.เมือง จ.อุดรธานี 41000 Phone : 042211563 Major : เคมี Student_Name Phone Student_ID Address Major STUDENT CREATE TABLE STUDENT ( Student_ID CHAR(11) NOT NULL UNIQUE, Student_Name VARCHAR(50) , Address VARCHAR(100), Phone VARCHAR(10) , Major VARCHAR(20) , PRIMARY KEY(Student_ID) ) ; Student_ID : 63856245231 Student_Name : สมศักดิ์ ใจดี Address : 50 ถ.ทหาร ต.หมากแข้ง อ.เมือง จ.อุดรธานี 41000 Phone : 042244121 Major : คอมพิวเตอร์
Relationship ความสัมพันธ์ หมายถึง ความสัมพันธ์ที่เชื่อมโยงระหว่างแต่ละเอนทิตี้ ตามเงื่อนไขของระบบงาน เช่นเอนทิตี้ “อาจารย์” และเอนทิตี้ “นักศึกษา” มีความสัมพันธ์กันชื่อ “เป็นที่ปรึกษา”
Relationship สัญลักษณ์แทน ความสัมพันธ์ Relationship Name แสดงความสัมพันธ์ระหว่างเอนทิตี้ที่มีความสัมพันธ์กันแบบปกติ แสดงความสัมพันธ์ระหว่างเอนทิตี้แบบอ่อนกับเอนทิตี้อื่น (Owner Entity) ที่มีความสัมพันธ์กันแบบเชิงปรากฏและเชิงระบุ เรียกความสัมพันธ์นี้ว่า Identifying Relationship Relationship Name
Cardinality Constraints หมายถึง การระบุจำนวนสมาชิกของเอนทิตี้ที่มาสัมพันธ์กันในแต่ละความสัมพันธ์ ประกอบด้วย ความสัมพันธ์แบบ หนึ่งต่อหนึ่ง(One-to-One Relationship) ความสัมพันธ์แบบ หนึ่งต่อกลุ่ม(One-to-Many Relationship) ความสัมพันธ์แบบ กลุ่มต่อกลุ่ม(Many-to-Many Relationship)
1 : 1 Relationship เป็นการแสดงความสัมพันธ์ระหว่างข้อมูลของเอนทิตี้หนึ่งกับข้อมูลของอีกเอนทิตี้หนึ่งเพียง 1 รายการเท่านั้น ตัวอย่างเช่น อาจารย์ 1 คน เป็นคณบดีได้ 1 คณะ ในขณะที่ คณะวิชาแต่ละคณะมีคณบดี ได้ 1 คน/คณะ พนักงาน 1 คนมีที่จอดรถเพียง 1 ที่ และที่จอดรถแต่ละที่สามารถจอดรถโดยพนักงาน 1 คนเท่านั้น พนักงาน 1 คนเป็นผู้จัดการแผนกได้ 1 แผนกและแต่ละแผนกก็มีผู้จัดการได้เพียง 1 คน
1 : 1 Relationship สัญลักษณ์แบบ Chen สัญลักษณ์แบบ Crow’s Foot 1 1 A R1 B สัญลักษณ์แบบ Crow’s Foot A R1 B
1 : 1 Relationship อาจารย์ คณะวิชา ชื่อ นามสกุล รหัสคณะ ชื่อคณะ รหัสอาจารย์ 1 1 1 อาจารย์ เป็นคณบดี คณะวิชา รหัส ชื่อ นามสกุล รหัส ชื่อคณะ T1 เรวดี พิพัฒน์สูงเนิน F1 วิทยาศาสตร์ T2 คุณาวุฒิ บุญกว้าง F2 บริหารธุรกิจ T3 นิพล สังสุทธิ F3 วิศวกรรมศาสตร์ T4 อารีรัตน์ วุฒิเสน F4 ศิลปกรรมศาสตร์ T5 ปัจจัย พวงสุวรรณ F5 เกษตรศาสตร์ อาจารย์ คณะวิชา
1 : 1 Relationship บุคลากร แต่งงาน 1 สมชาย สมศรี สมจิต 1 สมใจ สมหวัง สมศักดิ์
1 : N Relationship เป็นการแสดงความสัมพันธ์ของข้อมูลเอนทิตี้หนึ่งว่ามีความสัมพันธ์กับข้อมูลของอีกเอนทิตี้หนึ่งมากกว่า 1 รายการ ตัวอย่างเช่น อาจารย์ 1 คน เป็นอาจารย์ที่ปรึกษาให้กับนักศึกษาได้หลายคน ในขณะที่นักศึกษาแต่ละคนมีอาจารย์ที่ปรึกษาเพียง 1 คน แผนก 1 แผนกมีพนักงานสังกัดได้หลายคน ในขณะที่พนักงานแต่ละคนสามารถสังกัดแผนกได้เพียง 1 แผนก
1 : N Relationship สัญลักษณ์แบบ Chen สัญลักษณ์แบบ Crow’s Foot 1 N A R1 B สัญลักษณ์แบบ Crow’s Foot A R1 B
1 : N Relationship Primery Key ไปไว้ Many อาจารย์ นักศึกษา อาจารย์ ชื่อ นามสกุล ชื่อ โปรแกรมวิชา รหัสอาจารย์ รหัสนักศึกษา นามสกุล 1 1 N อาจารย์ เป็นที่ปรึกษา นักศึกษา รหัส ชื่อ นามสกุล รหัส ชื่อ นามสกุล โปรแกรมวิชา T1 เรวดี ทองอ่อน s1 วนิดา สุขสันต์ คอมพิวเตอร์ T2 พนารัตน์ ศรีเชษฐา s2 สมชาย รักดี โยธา T3 นิพล สังสุทธิ s3 จริงใจ รักชีพ คอมพิวเตอร์ T4 อารีรัตน์ บุญทอง s4 สถาพร ช่วงโชติ สัตวบาล T5 ปัจจัย พวงสุวรรณ s5 จิราพร แก้วมณี โยธา S6 ลินดา ใจอ่อน โยธา อาจารย์ S7 ชาติชาย ปานพุ่ม คอมพิวเตอร์ Primery Key ไปไว้ Many นักศึกษา
1 : N Relationship Primery Key ไปไว้ Many อาจารย์ นักศึกษา อาจารย์ ชื่อ นามสกุล ชื่อ โปรแกรมวิชา รหัสอาจารย์ รหัสนักศึกษา นามสกุล 1 1 N อาจารย์ เป็นที่ปรึกษา นักศึกษา รหัสอาจารย์ รหัส ชื่อ นามสกุล รหัส ชื่อ นามสกุล โปรแกรมวิชา T1 เรวดี ทองอ่อน s1 วนิดา สุขสันต์ คอมพิวเตอร์ T2 พนารัตน์ ศรีเชษฐา s2 สมชาย รักดี โยธา T3 นิพล สังสุทธิ s3 จริงใจ รักชีพ คอมพิวเตอร์ T4 อารีรัตน์ บุญทอง s4 สถาพร ช่วงโชติ สัตวบาล T5 ปัจจัย พวงสุวรรณ s5 จิราพร แก้วมณี โยธา S6 ลินดา ใจอ่อน โยธา อาจารย์ S7 ชาติชาย ปานพุ่ม คอมพิวเตอร์ Primery Key ไปไว้ Many นักศึกษา
1 : N Relationship คณะวิชา นักศึกษา นักศึกษา สังกัด คณะวิชา ชื่อ นามสกุล รหัสคณะ ชื่อคณะ รหัสนักศึกษา โปรแกรมวิชา N 1 นักศึกษา สังกัด คณะวิชา รหัส ชื่อ นามสกุล โปรแกรมวิชา รหัส ชื่อคณะ s1 วนิดา สุขสันต์ คอมพิวเตอร์ F1 วิทยาศาสตร์ s2 สมชาย รักดี โยธา F2 บริหารธุรกิจ s3 จริงใจ รักชีพ คอมพิวเตอร์ F3 วิศวกรรมศาสตร์ s4 สถาพร ช่วงโชติ สัตวบาล F4 ศิลปกรรมศาสตร์ s5 จิราพร แก้วมณี โยธา F5 เกษตรศาสตร์ S6 ลินดา ใจอ่อน โยธา คณะวิชา S7 ชาติชาย ปานพุ่ม คอมพิวเตอร์ นักศึกษา
1 : N Relationship คณะวิชา นักศึกษา นักศึกษา สังกัด คณะวิชา รหัสคณะ ชื่อ นามสกุล รหัสคณะ ชื่อคณะ รหัสนักศึกษา โปรแกรมวิชา N 1 นักศึกษา สังกัด คณะวิชา รหัส ชื่อ นามสกุล โปรแกรมวิชา รหัส ชื่อคณะ s1 วนิดา สุขสันต์ คอมพิวเตอร์ F1 วิทยาศาสตร์ s2 สมชาย รักดี โยธา F2 บริหารธุรกิจ s3 จริงใจ รักชีพ คอมพิวเตอร์ F3 วิศวกรรมศาสตร์ s4 สถาพร ช่วงโชติ สัตวบาล F4 ศิลปกรรมศาสตร์ s5 จิราพร แก้วมณี โยธา F5 เกษตรศาสตร์ S6 ลินดา ใจอ่อน โยธา คณะวิชา S7 ชาติชาย ปานพุ่ม คอมพิวเตอร์ นักศึกษา
M : N Relationship เป็นการแสดงความสัมพันธ์ของข้อมูลระหว่างเอนทิตี้แบบกลุ่มต่อกลุ่ม ตัวอย่างเช่น นักศึกษา 1 คนสามารถลงทะเบียนเรียนได้หลายวิชา ในขณะที่แต่ละวิชาก็สามารถมีนักศึกษามาลงทะเบียนเรียนได้หลายคน
M : N Relationship สัญลักษณ์แบบ Chen สัญลักษณ์แบบ Crow’s Foot M N A R1 B สัญลักษณ์แบบ Crow’s Foot A R1 B
M : N Relationship วิชาเรียน นักศึกษา นักศึกษา ลงทะเบียน วิชาเรียน ชื่อ นามสกุล รหัสวิชา ชื่อวิชา รหัสนักศึกษา โปรแกรมวิชา หน่วยกิต M N นักศึกษา ลงทะเบียน วิชาเรียน รหัส ชื่อ นามสกุล โปรแกรมวิชา รหัส ชื่อวิชา หน่วยกิต s1 วนิดา สุขสันต์ คอมพิวเตอร์ Su1 ฐานข้อมูล 3 s2 สมชาย รักดี โยธา Su2 สื่อสารข้อมูล 3 s3 จริงใจ รักชีพ คอมพิวเตอร์ Su3 แคลคูลัส 3 s4 สถาพร ช่วงโชติ สัตวบาล Su4 บัญชี1 3 s5 จิราพร แก้วมณี โยธา Su5 อังกฤษ1 2 S6 ลินดา ใจอ่อน โยธา วิชาเรียน S7 ชาติชาย ปานพุ่ม คอมพิวเตอร์ นักศึกษา
M : N Relationship วิชาเรียน นักศึกษา นักศึกษา ลงทะเบียน วิชาเรียน รหัสนักศึกษา รหัสวิชา รหัสวิชา ชื่อ นามสกุล รหัสวิชา ชื่อวิชา รหัสนักศึกษา โปรแกรมวิชา หน่วยกิต M N นักศึกษา ลงทะเบียน วิชาเรียน รหัส ชื่อ นามสกุล โปรแกรมวิชา รหัส ชื่อวิชา หน่วยกิต s1 วนิดา สุขสันต์ คอมพิวเตอร์ Su1 ฐานข้อมูล 3 s2 สมชาย รักดี โยธา Su2 สื่อสารข้อมูล 3 s3 จริงใจ รักชีพ คอมพิวเตอร์ Su3 แคลคูลัส 3 s4 สถาพร ช่วงโชติ สัตวบาล Su4 บัญชี1 3 s5 จิราพร แก้วมณี โยธา Su5 อังกฤษ1 2 S6 ลินดา ใจอ่อน โยธา วิชาเรียน S7 ชาติชาย ปานพุ่ม คอมพิวเตอร์ นักศึกษา
M : N Relationship วิชาเรียน การเขียนโปรแกรม 1 M ฐานข้อมูลเบื้องต้น บังคับเรียนก่อน วิชาเรียน ระบบการจัดการฐานข้อมูล N เครือข่ายคอมพิวเตอร์ การวิเคราะห์และออกแบบระบบ เครือข่ายไร้สาย
ความสัมพันธ์เชิงระบุ(Identifying Relationship) 1 R1 N E2 N N R5 1 R2 E6 1 N R3 1 E3 E4 N R4 1 E5
สัญลักษณ์ E-R Model ชื่อเอนทิตี้ ชื่อเอนทิตี้ E-R Model แบบ Chen เอนทิตี้แบบปกติ ชื่อเอนทิตี้ เอนทิตี้แบบอ่อน
สัญลักษณ์ E-R Model E-R Model แบบ Chen ความสัมพันธ์แบบปกติ ความสัมพันธ์แบบ Existence Dependency
สัญลักษณ์ E-R Model E-R Model แบบ Chen แอททริบิวต์แบบ atomic attribute , single-valued attribute แอททริบิวต์แบบ multi-valued attribute แอททริบิวต์แบบ composite attribute แอททริบิวต์แบบ Derive attribute
สัญลักษณ์ E-R Model E-R Model แบบ Chen ความสัมพันธ์ของข้อมูลระหว่าง E1 กับ E2 แบบ 1:1 แบบ Partial Participation E1 E2 1 ความสัมพันธ์ของข้อมูลระหว่าง E1 กับ E2 แบบ 1:N แบบ Partial Participation E1 E2 1 N ความสัมพันธ์ของข้อมูลระหว่าง E1 กับ E2 แบบ M:N โดย E1 เป็นแบบ Partial Participation และ E2 เป็นแบบ Total Participation E1 E2 M N
สัญลักษณ์ E-R Model E-R Model แบบ Chen Generalization หรือ Specialization หากสัญลักษณ์ในวงกลมเป็น d หมายถึง disjoint แต่ถ้าสัญลักษณ์ในวงกลมเป็น o หมายถึง Nondisjoint เส้นที่ลากจาก Superclass มายังวงกลม ถ้าเป็นเส้นคู่ หมายถึง Total Participation แต่ถ้าเป็น เส้นเดี่ยว หมายถึง Partial Participation Superclass d Subclass Subclass
สัญลักษณ์ E-R Model ชื่อเอนทิตี้ E-R Model แบบ Crow’s Foot เอนทิตี้แบบปกติ ชื่อความสัมพันธ์ ความสัมพันธ์ระหว่างเอนทิตี้ปกติ ชื่อความสัมพันธ์ ความสัมพันธ์ระหว่างเอนทิตี้ปกติกับแบบอ่อน หรือแบบอ่อนกับแบบอ่อน
สัญลักษณ์ E-R Model E-R Model แบบ Crow’s Foot ชื่อเอนทิตี้ เอนทิตี้ปกติและแอททริบิวต์ แอททริบิวต์จะแสดงข้างใต้ชื่อเอนทิตี้ โดยแอททริบิวต์ที่เป็นคีย์หลักจะขีดเส้นใต้ที่ใต้ชื่อแอททริบิวต์ แอททริบิวต์ 1 แอททริบิวต์ 2 แอททริบิวต์ 3
สัญลักษณ์ E-R Model E-R Model แบบ Crow’s Foot ชื่อเอนทิตี้ เอนทิตี้แบบอ่อนและแอททริบิวต์ แอททริบิวต์จะแสดงข้างใต้ชื่อเอนทิตี้ โดยแอททริบิวต์ที่เป็นคีย์ร่วมของคีย์หลักจะขีดเส้นใต้ที่ใต้ชื่อแอททริบิวต์ แอททริบิวต์ 1 แอททริบิวต์ 2 แอททริบิวต์ 3
สัญลักษณ์ E-R Model E-R Model แบบ Crow’s Foot ความสัมพันธ์แบบ Mandatory One ความสัมพันธ์แบบ Mandatory Many ความสัมพันธ์แบบ Optional One ความสัมพันธ์แบบ Optional Many
สัญลักษณ์ E-R Model E-R Model แบบ Crow’s Foot ความสัมพันธ์ของข้อมูลระหว่าง E1 กับ E2 แบบ 1:1 แบบ Total Participation (Mandatory) ชื่อความสัมพันธ์ E1 E2 ความสัมพันธ์ของข้อมูลระหว่าง E1 กับ E2 แบบ 1:1 โดย E1 เป็นแบบ Partial Participation (Optional) และ E2 เป็นแบบ Total Participation (Mandatory) ชื่อความสัมพันธ์ E1 E2
สัญลักษณ์ E-R Model E-R Model แบบ Crow’s Foot ความสัมพันธ์ของข้อมูลระหว่าง E1 กับ E2 แบบ 1:N โดย E1 เป็นแบบ Partial Participation (Optional) ส่วน E2 เป็นแบบ Total Participation (Mandatory) ชื่อความสัมพันธ์ E1 E2 ชื่อความสัมพันธ์ ความสัมพันธ์ของข้อมูลระหว่าง E1 กับ E2 แบบ M:N แบบ Partial Participation (Optional) E1 E2
สัญลักษณ์ E-R Model E-R Model แบบ Crow’s Foot Superclass สี่เหลี่ยมใหญ่แสดง Superclass และสี่เหลี่ยมย่อยแสดง Subclass (Generalization / Specialization) Subclass Subclass
ตัวอย่าง ER แบบ Crow’s Foot วิชาเรียนสามารถมีหมู่เรียนได้หลายหมู่เรียน(หรือไม่มีหมู่เรียนก็ได้) แต่ในขณะที่แต่ละหมู่เรียน(ทุกหมู่เรียน)จะเปิดสอนได้เพียง 1 รายวิชา วิชาเรียน รหัสวิชา ชื่อวิชา หน่วยกิต หมู่เรียน รหัสหมู่เรียน ห้องเรียน เวลาเรียน มี
เปรียบเทียบ E-R Model แผนก 1 แผนกอาจจะมีพนักงานทำงานอยู่หรือไม่ก็ได้ แต่พนักงานทุกคนต้องสังกัดแผนกเพียง 1 แผนกเท่านั้น N สังกัด 1 Chen พนักงาน แผนก สังกัด Crow’s Foot พนักงาน แผนก
เปรียบเทียบ E-R Model แผนก 1 แผนกอาจจะมีพนักงานทำงานอยู่หรือไม่ก็ได้ และพนักงานแต่ละคนจะสังกัดแผนกหรือไม่ก็ได้ แต่สังกัดได้ไม่เกิน 1 แผนก N สังกัด 1 Chen พนักงาน แผนก สังกัด Crow’s Foot พนักงาน แผนก
เปรียบเทียบ E-R Model แผนกแต่ละแผนกจะต้องมีพนักงานทำงานอยู่ และพนักงานทุกคนต้องสังกัดแผนกเพียง 1 แผนกเท่านั้น N สังกัด 1 พนักงาน แผนก Chen สังกัด Crow’s Foot พนักงาน แผนก
เปรียบเทียบ E-R Model แผนก 1 แผนกจะต้องมีพนักงานทำงานอยู่ แต่พนักงานแต่ละคนจะสังกัดแผนกหรือไม่ก็ได้ แต่สังกัดได้ไม่เกิน 1 แผนก N สังกัด 1 พนักงาน แผนก Chen สังกัด Crow’s Foot พนักงาน แผนก
ตัวอย่าง ER แบบ Crow’s Foot ประเทศสามารถมีจังหวัด/รัฐ ได้หลายจังหวัด/รัฐ (หรือไม่มีก็ได้) แต่ในขณะที่แต่ละจังหวัด/รัฐ(ทุกจังหวัด/รัฐ)จะเกิดขึ้นได้ต้องมีข้อมูลประเทศเกิดขึ้นก่อน และ 1 จังหวัด/รัฐ จะอยู่ในประเทศได้แค่ 1 ประเทศเท่านั้น รหัสจังหวัด/รัฐ ชื่อจังหวัด/รัฐ ชื่อประเทศ จำนวนประชากร รหัสประเทศ 1 N มี ประเทศ จังหวัด/รัฐ
ตัวอย่าง ER แบบ Crow’s Foot นักศึกษาสามารถลงทะเบียนเรียนในหมู่เรียนได้คนละหลายหมู่เรียน(หรือไม่ลงทะเบียนเรียนในหมู่เรียนใดเลยก็ได้) และแต่ละหมู่เรียนก็สามารถมีนักศึกษามาลงทะเบียนเรียนได้หลายคน(หรือไม่มีนักศึกษามาลงทะเบียนเรียนเลยก็ได้) เกรด รหัสหมู่เรียน ห้องเรียน ชื่อชื่อ สาขาวิชา รหัสนักศึกษา เวลาเรียน ลงทะเบียน เรียนใน M N นักศึกษา หมู่เรียน รหัสนักศึกษา รหัสหมู่เรียน
ขั้นตอนการออกแบบฐานข้อมูลด้วย ER Model
ขั้นตอนการสร้าง E-R MODEL
ขั้นที่ 1 กำหนดเอนทิตี้ สำนักงาน ตัวแทน เจ้าของบ้าน บ้าน
ขั้นที่ 2 กำหนดความสัมพันธ์ บริษัทมีสำนักงานตั้งอยู่หลายแห่ง โดยในแต่ละแห่งมีตัวแทนนายหน้าทำงานประจำสำนักงานหลายคน ทำงาน ประจำ สำนักงาน ตัวแทน เจ้าของบ้าน บ้าน
ขั้นที่ 2 กำหนดความสัมพันธ์ เจ้าของบ้านที่มาฝากขายแต่ละคนสามารถมาฝากขายบ้านกับบริษัทได้หลายหลัง ทำงาน ประจำ สำนักงาน ตัวแทน เก็บรายการ ฝากขาย เจ้าของบ้าน บ้าน
ขั้นที่ 3 กำหนดความสัมพันธ์ (ใส่ค่า) เจ้าของบ้านที่มาฝากขายแต่ละคนสามารถมาฝากขายบ้านกับบริษัทได้หลายหลัง 1 ทำงาน ประจำ N สำนักงาน ตัวแทน 1 เก็บรายการ N ฝากขาย เจ้าของบ้าน 1 N บ้าน
ขั้นที่ 4 กำหนดแอททริบิวต์ ข้อมูลที่จำเป็นของสำนักงานที่จัดเก็บได้แก่ รหัสสำนักงาน , ชื่อผู้จัดการสำนัก , เบอร์โทรศัพท์ , เบอร์โทรสาร และที่อยู่ โทรศัพท์ ชื่อผู้จัดการ ที่อยู่ โทรสาร รหัสสำนักงาน รหัสสำนักงาน สำนักงาน
ขั้นที่ 4 กำหนดแอททริบิวต์ ข้อมูลที่จัดเก็บเกี่ยวกับตัวแทนได้แก่ รหัสตัวแทน , ชื่อ และเบอร์โทรศัพท์ ชื่อตัวแทน รหัสตัวแทน รหัสตัวแทน โทรศัพท์ ตัวแทน
ขั้นที่ 4 กำหนดแอททริบิวต์ ข้อมูลที่จัดเก็บเกี่ยวกับบ้านได้แก่ รหัสบ้าน , ที่ตั้ง(บ้านเลขที่ , ถนน,ตำบล,อำเภอ,จังหวัด,รหัสไปรษณีย์),จำนวนห้องนอน , จำนวนห้องน้ำ,พื้นที่ , คอมมิสชัน,ราคาขาย คอมมิสชัน ราคาขาย รหัสบ้าน รหัสบ้าน บ้าน จน.ห้องนอน รหัสไปรษณีย์ พื้นที่ ที่ตั้ง จน.ห้องน้ำ จังหวัด บ้านเลขที่ อำเภอ ตำบล ถนน
ขั้นที่ 4 กำหนดแอททริบิวต์ ข้อมูลที่จัดเก็บเกี่ยวกับเจ้าของบ้าน ได้แก่ รหัสประจำตัว,ชื่อ,นามสกุล,โทรศัพท์ นามสกุล ชื่อ เจ้าของบ้าน รหัสประจำตัว โทรศัพท์
ขั้นที่ 4 กำหนดแอททริบิวต์ ชื่อตัวแทน โทรศัพท์ รหัสตัวแทน โทรศัพท์ ที่อยู่ ชื่อผู้จัดการ โทรสาร ตัวแทน N รหัสสำนักงาน 1 ทำงาน ประจำ สำนักงาน 1 เก็บรายการ นามสกุล คอมมิสชัน ชื่อ ราคาขาย N รหัสบ้าน ฝากขาย เจ้าของบ้าน 1 N บ้าน จน.ห้องนอน รหัสไปรษณีย์ พื้นที่ ที่ตั้ง รหัสประจำตัว จน.ห้องน้ำ โทรศัพท์ จังหวัด บ้านเลขที่ อำเภอ ตำบล ถนน
ขั้นที่ 4 กำหนดแอททริบิวต์ โทรศัพท์ ชื่อผู้จัดการ ที่อยู่ ชื่อตัวแทน โทรสาร รหัสตัวแทน โทรศัพท์ รหัสสำนักงาน 1 ทำงาน ประจำ N สำนักงาน ตัวแทน 1 เก็บรายการ นามสกุล คอมมิสชัน ชื่อ ราคาขาย N รหัสบ้าน ฝากขาย เจ้าของบ้าน 1 N บ้าน จน.ห้องนอน รหัสไปรษณีย์ พื้นที่ ที่ตั้ง รหัสประจำตัว จน.ห้องน้ำ โทรศัพท์ จังหวัด บ้านเลขที่ อำเภอ ตำบล ถนน
ER-Diagram ผู้แต่ง หนังสือ สำนักพิมพ์ การสั่งซื้อ ลูกค้า แต่ง จัดแบ่งเป็น ประเภทหนังสือ จัดพิมพ์ มีรายการ สำนักพิมพ์ การสั่งซื้อ ใช้งาน ลูกค้า
ER-Diagram ผู้แต่ง หนังสือ สำนักพิมพ์ การสั่งซื้อ ลูกค้า M แต่ง N N จัดแบ่งเป็น 1 ประเภทหนังสือ N N จัดพิมพ์ มีรายการ 1 M สำนักพิมพ์ การสั่งซื้อ N ใช้งาน 1 ลูกค้า
ER-Diagram ผู้แต่ง หนังสือ สำนักพิมพ์ การสั่งซื้อ ลูกค้า M แต่ง N N ชื่อผู้แต่ง อีเมลล์ รหัสผู้แต่ง ผู้แต่ง M แต่ง N หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N N จัดพิมพ์ มีรายการ 1 M สำนักพิมพ์ การสั่งซื้อ N ใช้งาน 1 ลูกค้า
ER-Diagram ผู้แต่ง หนังสือ สำนักพิมพ์ การสั่งซื้อ ลูกค้า M แต่ง N N ครั้งที่พิมพ์ ปีที่พิมพ์ ชื่อผู้แต่ง ชื่อหนังสือ อีเมลล์ รหัสผู้แต่ง ราคา ISBN ผู้แต่ง M แต่ง N หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N N จัดพิมพ์ มีรายการ 1 M สำนักพิมพ์ การสั่งซื้อ N ใช้งาน 1 ลูกค้า
ER-Diagram ผู้แต่ง หนังสือ สำนักพิมพ์ การสั่งซื้อ ลูกค้า M แต่ง N N ครั้งที่พิมพ์ รหัสประเภทหนังสือ ปีที่พิมพ์ ชื่อผู้แต่ง ชื่อหนังสือ ชื่อประเภท อีเมลล์ รหัสผู้แต่ง ราคา ISBN ผู้แต่ง M แต่ง N หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N N จัดพิมพ์ มีรายการ 1 M สำนักพิมพ์ การสั่งซื้อ N ใช้งาน 1 ลูกค้า
ER-Diagram ผู้แต่ง หนังสือ สำนักพิมพ์ การสั่งซื้อ ลูกค้า M แต่ง N N ครั้งที่พิมพ์ รหัสประเภทหนังสือ ปีที่พิมพ์ ชื่อผู้แต่ง ชื่อหนังสือ ชื่อประเภท อีเมลล์ รหัสผู้แต่ง ราคา ISBN ผู้แต่ง M แต่ง N หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N N เว็บไซต์ จัดพิมพ์ มีรายการ รหัสสำนักพิมพ์ 1 M สำนักพิมพ์ การสั่งซื้อ N ใช้งาน 1 ลูกค้า ที่อยู่ โทรศัพท์ อีเมลล์ ชื่อสำนักพิมพ์
ER-Diagram ผู้แต่ง หนังสือ สำนักพิมพ์ การสั่งซื้อ ลูกค้า M แต่ง N N ครั้งที่พิมพ์ รหัสประเภทหนังสือ ปีที่พิมพ์ ชื่อผู้แต่ง ชื่อหนังสือ ชื่อประเภท อีเมลล์ รหัสผู้แต่ง ราคา ISBN ผู้แต่ง M แต่ง N หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N N เว็บไซต์ จัดพิมพ์ มีรายการ รหัสสำนักพิมพ์ จำนวน 1 ราคารวม M สำนักพิมพ์ การสั่งซื้อ N ใช้งาน 1 ลูกค้า วันสั่งซื้อ วันที่ส่งสินค้า ที่อยู่ โทรศัพท์ ยอดรวม อีเมลล์ รหัสการสั่งซื้อ ชื่อสำนักพิมพ์ ภาษีมูลค่าเพิ่ม
ER-Diagram ผู้แต่ง หนังสือ สำนักพิมพ์ การสั่งซื้อ ลูกค้า M แต่ง N N ครั้งที่พิมพ์ รหัสประเภทหนังสือ ปีที่พิมพ์ ชื่อผู้แต่ง ชื่อหนังสือ ชื่อประเภท อีเมลล์ รหัสผู้แต่ง ราคา ISBN ผู้แต่ง M แต่ง N หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N N ชื่อเข้าระบบ เว็บไซต์ จัดพิมพ์ มีรายการ โทรศัพท์ รหัสสำนักพิมพ์ จำนวน รหัสผ่าน ชื่อ 1 ราคารวม M สำนักพิมพ์ การสั่งซื้อ N ใช้งาน 1 ลูกค้า วันสั่งซื้อ วันที่ส่งสินค้า รหัสลูกค้า ที่อยู่ โทรศัพท์ ยอดรวม อีเมลล์ อีเมลล์ รหัสการสั่งซื้อ ที่อยู่ ชื่อสำนักพิมพ์ ภาษีมูลค่าเพิ่ม
ผู้แต่ง หนังสือ สำนักพิมพ์ การสั่งซื้อ ลูกค้า ครั้งที่พิมพ์ ISBN รหัสประเภทหนังสือ ปีที่พิมพ์ ชื่อผู้แต่ง ชื่อหนังสือ ชื่อประเภท อีเมลล์ รหัสผู้แต่ง ราคา ISBN ผู้แต่ง M การแต่ง N หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N รหัสผู้แต่ง N ชื่อเข้าระบบ เว็บไซต์ จัดพิมพ์ มีการสั่งซื้อ โทรศัพท์ รหัสสำนักพิมพ์ รหัสผ่าน ชื่อ 1 M สำนักพิมพ์ การสั่งซื้อ N ใช้งาน 1 ลูกค้า วันสั่งซื้อ วันที่ส่งสินค้า รหัสลูกค้า ที่อยู่ โทรศัพท์ ยอดรวม อีเมลล์ อีเมลล์ รหัสการสั่งซื้อ ที่อยู่ ชื่อสำนักพิมพ์ ภาษีมูลค่าเพิ่ม
ผู้แต่ง หนังสือ สำนักพิมพ์ การสั่งซื้อ ลูกค้า ครั้งที่พิมพ์ ISBN รหัสประเภทหนังสือ ปีที่พิมพ์ ชื่อผู้แต่ง ชื่อหนังสือ ชื่อประเภท อีเมลล์ รหัสผู้แต่ง ราคา รหัสประเภทหนังสือ ISBN ผู้แต่ง M การแต่ง N หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N รหัสผู้แต่ง N ชื่อเข้าระบบ เว็บไซต์ จัดพิมพ์ มีการสั่งซื้อ โทรศัพท์ รหัสสำนักพิมพ์ รหัสผ่าน ชื่อ 1 M สำนักพิมพ์ การสั่งซื้อ N ใช้งาน 1 ลูกค้า วันสั่งซื้อ วันที่ส่งสินค้า รหัสลูกค้า ที่อยู่ โทรศัพท์ ยอดรวม อีเมลล์ อีเมลล์ รหัสการสั่งซื้อ ที่อยู่ ชื่อสำนักพิมพ์ ภาษีมูลค่าเพิ่ม
ผู้แต่ง หนังสือ สำนักพิมพ์ การสั่งซื้อ ลูกค้า ครั้งที่พิมพ์ ISBN รหัสประเภทหนังสือ ปีที่พิมพ์ ชื่อผู้แต่ง ชื่อหนังสือ ชื่อประเภท อีเมลล์ รหัสผู้แต่ง ราคา รหัสประเภทหนังสือ ISBN ผู้แต่ง M การแต่ง N หนังสือ N จัดแบ่งเป็น 1 ประเภทหนังสือ N รหัสผู้แต่ง ISBN N รหัสสำนักพิมพ์ จำนวน ชื่อเข้าระบบ เว็บไซต์ จัดพิมพ์ มีการสั่งซื้อ โทรศัพท์ รหัสสำนักพิมพ์ รหัสผ่าน 1 ราคารวม ชื่อ M รหัสการสั่งซื้อ รหัสลูกค้า สำนักพิมพ์ การสั่งซื้อ N ใช้งาน 1 ลูกค้า วันสั่งซื้อ วันที่ส่งสินค้า รหัสลูกค้า ที่อยู่ โทรศัพท์ ยอดรวม อีเมลล์ อีเมลล์ รหัสการสั่งซื้อ ที่อยู่ ชื่อสำนักพิมพ์ ภาษีมูลค่าเพิ่ม
พจนานุกรมข้อมูล(Data Dictionary) Table name Attribute name Description Data Type Size Key References BookType (ประเภทหนังสือ) BTypeID รหัสประเภท Char 5 PK BTypeName ชื่อประเภท Varchar 30
พจนานุกรมข้อมูล(Data Dictionary) Table name Attribute name Description Data Type Size Key References Author (ผู้แต่ง) AuID รหัผู้แต่ง Char 3 PK AuName ชื่อผู้แต่ง Varchar 40 AuEmail อีเมลล์ผู้แต่ง 50
พจนานุกรมข้อมูล(Data Dictionary) Table name Attribute name Description Data Type Size Key References Book (หนังสือ) ISBN รหัสISBN Char 15 PK BName ชื่อหนังสือ Varchar 50 Price ราคา Float Edition ครั้งที่พิมพ์ Int Published ปีที่พิมพ์ BTypeID รหัสประเภท 5 FK BookType PubID รหัสสำนักพิมพ์ Publisher
พจนานุกรมข้อมูล(Data Dictionary) Table name Attribute name Description Data Type Size Key References Orders (การสั่งซื้อ) OID รหัสการสั่งซื้อ Char 10 PK ODate วันที่พิมพ์ Date CSend วันที่สั่ง CID รหัสลูกค้า char 5 FK Customer
พจนานุกรมข้อมูล(Data Dictionary) Table name Attribute name Description Data Type Size Key References Customer (ลูกค้า) CID รหัสลูกค้า Char 5 PK CName ชื่อลูกค้า Varchar 30 CEmail อีเมลล์ลูกค้า 50 CUser ชื่อผู้ใช้ระบบ 12 CPwd รหัสผ่าน CPhone โทรศัพท์ 10 CAddr บ้านเลขที่ 40 CStreet ถนน CTumbon ตำบล CAmpher อำเภอ CProvince จังหวัด 7 CZipcode รหัสไปรษณีย์ Int
พจนานุกรมข้อมูล(Data Dictionary) Table name Attribute name Description Data Type Size Key References Publisher (สำนักพิมพ์) PubID รหัสสำนักพิมพ์ Char 5 PK PubName ชื่อสำนักพิมพ์ Varchar 30 PubEmail อีเมลล์สำนักพิมพ์ 50 PubWeb เว็บไซต์สำนักพิมพ์ PubAddr ที่อยู่สำนักพิมพ์ 60
พจนานุกรมข้อมูล(Data Dictionary) Table name Attribute name Description Data Type Size Key References Author_Book การต่งหนังสือ ISBN รหัสISBN Char 15 PK Book AuID รหัสผู้แต่ง 3 Author
พจนานุกรมข้อมูล(Data Dictionary) Table name Attribute name Description Data Type Size Key References Order_book (รายการสั่งซื้อ) OID รหัสการสั่งซื้อ Char 10 PK Orders ISBN รหัสหนังสือ 15 Book Qty จำนวนเงิน Int Sum ราคารวม Float
กิจกรรม 7 ข้อ 1. องค์ประกอบที่สำคัญของแบบจำลอง อี-อาร์ โมเดล มีไรบ้าง ข้อ 2. จงอธิบายความหมายและสัญลักษณ์ของคำต่อไปนี้ -เอนทิตี้ แอททริบิวต์ ความสัมพันธ์ คอมโพสิตแอทริบิวต์ แอทริบิวต์ที่ทีหลายค่า ดีไรฟต์แอทริบิวต์
กิจกรรม 7 ข้อ 3 คอมโพสิตเอนทิตี้มีความสำคัญอย่างไรในการออกแบบฐานข้อมูลเชิงสัมพันธ์ ข้อ 4 เอนทิตีอ่อนแอคืออะไร มีคุณสมบัติอย่างไร
กิจกรรม 7 ข้อ 5. จาก E-R Diagram จงตอบคำถามต่อไปนี้ 5.1) มีตารางชื่ออะไรบ้าง แต่ละตารางมีฟิลด์ใดบ้าง และมีฟิลด์ใดเป็น Primary Key 5.2) มีตารางชื่ออะไรบ้าง แต่ละตารางมีฟิลด์ใดบ้าง และมีฟิลด์ใดเป็น Foreign Key