Back to Home

DataBase System

Lesson1245679101112131415

Lesson 3 : E-R Model



Lesson Plan
Section No.
Section 1
Section 2
Test
PDF file
PPT File

<<Prev pageCourse MapNext page>>

Print content of this page
Save content of this page

 

อี-อาร์โมเดล

Entity-Relationship Model หรืออี-อาร์โมเดล เป็นแบบจำลองข้อมูลที่ได้รับการประยุกต์มาจาก แนวคิดของ Semantic โมเดล และได้รับความนิยมอย่างมากสำหรับนำมาใช้เพื่อการออกแบบฐานข้อมูลในระดับแนวคิด โดยอี-อาร์โมเดลเป็นผลงานการพัฒนาของ Peter Pin Shan Chen จาก Massachusetts Institute of Technology ในปี ค.ศ.1976

อี-อาร์โมเดล เป็นแบบจำลองข้อมูลซึ่งแสดงถึงโครงสร้างของฐานข้อมูลที่เป็นอิสระจากซอฟต์แวร์ที่จะใช้ในการพัฒนาฐานข้อมูล รวมทั้งรายละเอียดและความสัมพันธ์ระหว่างข้อมูลในระบบในลักษณะที่เป็นภาพรวม ทำให้เป็นประโยชน์อย่างมากต่อการรวบรวมและวิเคราะห์รายละเอียด ตลอดจนความสัมพันธ์ของข้อมูลต่าง ๆ โดยอี-อาร์โมเดลมีการใช้สัญลักษณ์ต่างๆ ที่เรียกว่า Entity Relationship Diagram หรือ อี-อาร์ไดอะแกรม แทนรูปแบบของข้อมูลเชิงตรรกะขององค์กร จึงทำให้บุคลากรที่เกี่ยวข้องกับระบบฐานข้อมูลสามารถเข้าใจลักษณะของข้อมูลและความสัมพันธ์ระหว่างข้อมูลได้ง่ายและถูกต้องตรงกัน ระบบที่ได้รับ การออกแบบจึงมีความถูกต้องและสอดคล้องกับวัตถุประสงค์ขององค์กร

ทั้งนี้ อี-อาร์โมเดลประกอบด้วย 4 ส่วน คือ เอนทิตี Property ความสัมพันธ์ Subtype และ Supertype

1. เอนทิตี

เอนทิตี หมายถึง สิ่งที่สนใจสามารถระบุได้ในความเป็นจริง และต้องการเก็บรวบรวมข้อมูลที่ เกี่ยวข้องด้วยไว้ในฐานข้อมูล โดยตัวอย่างของเอนทิตีประเภทต่าง ๆ เช่น บุคคล สถานที่ สิ่งของ หรือ เหตุการณ์ มีดังนี้

- บุคคล ได้แก่ พนักงาน ผู้ป่วย และ นักศึกษา เป็นต้น

- สถานที่ ได้แก่ เขต จังหวัด และ ภาค เป็นต้น

- วัตถุ ได้แก่ รถยนต์ อาคาร และ เครื่องจักร เป็นต้น

- เหตุการณ์ ได้แก่ การลงทะเบียนเรียน ความชำนาญ เป็นต้น

ในอี-อาร์ไดอะแกรม ใช้สัญลักษณ์รูปสี่เหลี่ยมผืนผ้า (rectangle) แทนหนึ่งเอนทิตี โดยมีชื่อของ เอนทิตีนั้น ๆ กำกับอยู่ภายใน

นักศึกษา

ภาพที่ 3.5 เอนทิตีนักศึกษา

เอนทิตีสามารถจำแนกได้เป็น 2 ประเภท คือ เอนทิตีปกติ (regular entity) และเอนทิตีอ่อนแอ (weak entity)

1.1 เอนทิตีปกติ

เอนทิตีปกติ หรือ Strong Entity หมายถึง เอนทิตีที่สนใจและต้องการจัดเก็บข้อมูลที่เกี่ยวข้องไว้ในระบบฐานข้อมูล ซึ่งการคงอยู่ของเอนทิตีนี้ไม่เกี่ยวข้องกับเอนทิตีอื่น โดยเอนทิตีนี้สามารถมีคุณสมบัติ Identity ได้ตัวเอง

ในอี-อาร์ไดอะแกรม สัญลักษณ์ที่ใช้แทนเอนทิตีปกติเป็นเช่นเดียวกับเอนทิตี ดังนั้น เมื่อมีกล่าวถึงเอนทิตีใด ๆ โดยไม่มีการระบุรายละเอียดอื่น จึงมีหมายความถึงเอนทิตีปกตินั่นเอง

1.2 เอนทิตีอ่อนแอ

เอนทิตีอ่อนแอ หมายถึง เอนทิตีที่มีการคงอยู่เกี่ยวข้องกับเอนทิตีอื่นในระบบฐานข้อมูล โดยเอนทิตีอื่นที่มีความสัมพันธ์กับเอนทิตีนี้เรียกว่า Parent Entity หรืออาจกล่าวได้ว่า เอนทิตีอ่อนแอจะไม่มีความหมายหรือไม่สามารถปรากฏในฐานข้อมูลได้ หากปราศจาก Parent Entity ที่มีความสัมพันธ์เกี่ยวข้องกัน ซึ่งสมาชิกของเอนทิตีอ่อนแอจะสามารถมีคุณสมบัติ Identity ได้ก็ต่อเมื่ออาศัย Property ใด Property หนึ่งของเอนทิตีปกติมาประกอบกับ Property ของเอนทิตีนั้น ๆ

ในอี-อาร์ไดอะแกรม ใช้สัญลักษณ์รูปสี่เหลี่ยมผืนผ้าสองรูปซ้อนกัน (double rectangle) แทนหนึ่งเอนทิตีอ่อนแอ โดยมีชื่อของเอนทิตีอ่อนแอนั้น ๆ กำกับอยู่ภายใน

ภาพที่ 3.6 ตัวอย่างของเอนทิตีอ่อนแอ

ทั้งนี้ ตัวอย่างของเอนทิตีปกติและเอนทิตีอ่อนแออาจอธิบายได้ดังภาพที่ 3.7 คือ ในสถานศึกษา แห่งหนึ่ง อาจารย์แต่ละคนจะมีรหัสอาจารย์ที่ไม่ซ้ำกัน ดังนั้น เอนทิตีอาจารย์จะเป็นเอนทิตีปกติที่มี Property รหัสอาจารย์เป็น Identity

ในเอนทิตีตารางสอน อาจารย์แต่ละคนอาจจะสอนชุดวิชาเดียวกันและหมู่เรียนเดียวกัน หรือบางคนอาจจะสอนชุดวิชาเดียวกันแต่คนละหมู่เรียนก็ได้ ฉะนั้นหากไม่มีเอนทิตีอาจารย์ก็จะไม่สามารถทราบได้ว่า อาจารย์คนใด สอนชุดวิชาใด หมู่เรียนใด ในวัน/เวลาใด

นอกจากนี้ เอนทิตีตารางสอนจะสามารถมีคุณสมบัติ Identity ได้ก็ต่อเมื่ออาศัย Property รหัสอาจารย์ของเอนทิตีอาจารย์ซึ่งเป็นเอนทิตีปกติมาประกอบกับ Property วัน/เวลาสอนของ เอนทิตีตารางสอน ฉะนั้น เอนทิตีตารางสอนจะไม่สามารถคงอยู่ได้ หากปราศจากเอนทิตีอาจารย์ ดังนั้น จึงกล่าวได้ว่า เอนทิตีตารางสอนเป็นเอนทิตีอ่อนแอ

 

ภาพที่ 3.7 ตัวอย่างของเอนทิตีปกติและเอนทิตีอ่อนแอ

2. Property

Property หมายถึง ข้อมูลที่แสดงคุณสมบัติหรือคุณลักษณะของเอนทิตีหรือความสัมพันธ์ (มี ความหมายเช่นเดียวกับแอททริบิวต์ในแบบจำลองข้อมูลเชิงสัมพันธ์) เช่น Property ของเอนทิตีนักศึกษาประกอบด้วย รหัสประจำตัว ชื่อ-สกุล เพศ รหัสคณะ เป็นต้น

ในอี-อาร์ไดอะแกรมใช้สัญลักษณ์รูปวงรี (ellipse) ที่มีชื่อของ Property นั้นกำกับอยู่ภายในแทนหนึ่ง Property และเชื่อมต่อกับเอนทิตีที่มี Property นั้นด้วยเส้นตรง

ภาพที่ 3.8 Property ของเอนทิตีนักศึกษา

Property สามารถจำแนกได้เป็น 6 ประเภท คือ Simple Property, Composite Property, Key Property, Single Property, Multi-Valued Property และ Derived Property

2.1 Simple Property

Simple Property หมายถึง Property ที่ไม่สามารถแบ่งแยกย่อยลงไปได้อีก เช่น Property ชื่อ นามสกุล และเพศ เป็นต้น

ทั้งนี้ ในอี-อาร์ไดอะแกรม สัญลักษณ์ที่ใช้แทน Simple Property เป็นเช่นเดียวกับ Property

2.2 Composite Property

Composite Property หมายถึง Property ที่มีลักษณะตรงข้ามกับ Simple Property คือ สามารถแบ่งแยกย่อยลงไปได้อีก เช่น Property ชื่อ-สกุล สามารถแบ่งได้ 2 Simple Property คือ Property ชื่อ และนามสกุล หรือ Property ที่อยู่ สามารถแบ่งได้ 5 Simple Property คือ Property บ้านเลขที่ ถนน แขวง เขต และจังหวัด เป็นต้น

ในอี-อาร์ไดอะแกรม ใช้สัญลักษณ์รูปวงรีที่มีชื่อของ Property นั้นกำกับอยู่ภายในแทนหนึ่ง Composite Property และเชื่อมต่อกับ Simple Property ที่จำแนกออกไปด้วยเส้นตรง

ภาพที่ 3.9 ตัวอย่างของ Composite Property

2.3 Key Property

Key Property หมายถึง Property หรือกลุ่มของ Property ที่มีค่าของข้อมูลในแต่ละสมาชิกของ เอนทิตีไม่ซ้ำกัน ทำให้สามารถระบุความแตกต่างของแต่ละสมาชิกในเอนทิตีได้ เช่น เอนทิตีนักศึกษาประกอบด้วย Property รหัสประจำตัว ชื่อ-สกุล และที่อยู่ โดย Property ที่สามารถบอกความแตกต่างของ นักศึกษาแต่ละคนได้ คือ รหัสประจำตัว ดังนั้น Property รหัสประจำตัวจึงเป็น Key Property ของเอนทิตี นักศึกษา เป็นต้น

ใช้สัญลักษณ์รูปวงรีซึ่งภายในกำกับด้วยชื่อของ Property ที่มีการขีดเส้นใต้แทน Key Property และเชื่อมต่อกับเอนทิตีที่มี Property นั้นด้วยเส้นตรง

ในอี-อาร์ไดอะแกรม ภาพที่ 3.10 ตัวอย่างของ Key Property

2.4 Single-Valued Property

Single-Valued Property หมายถึง Property ที่มีค่าของข้อมูลในแต่ละสมาชิกของเอนทิตีได้เพียง ค่าเดียว เช่น บุคคลหนึ่งคนมีเพศเดียว Property เพศจึงเป็น Single-Valued Property หรือพนักงานหนึ่งคนมีเงินเดือนเพียงค่าเดียว Property เงินเดือนจึงเป็น Single-Valued Property เป็นต้น

ทั้งนี้ ในอี-อาร์ไดอะแกรม สัญลักษณ์ที่ใช้แทน Single-Valued Property จะเป็นเช่นเดียวกับ Property

2.5 Multi-Valued Property

Multi-Valued Property หมายถึง Property ที่มีลักษณะตรงข้ามกับ Single-Valued Property โดยเป็น Property ที่สามารถมีค่าของข้อมูลในแต่ละสมาชิกของเอนทิตีได้หลายค่า เช่น บุคคลหนึ่งคนอาจมีวุฒิการศึกษาได้หลายระดับ Property วุฒิการศึกษาจึงเป็น Multi-Valued Property หรือบ้านหลังหนึ่งอาจมีหลายเบอร์โทรศัพท์ Property เบอร์โทรศัพท์จึงเป็น Multi-Valued Property เป็นต้น

ใช้สัญลักษณ์รูปวงรีซึ่งภายในกำกับด้วยชื่อของ Property ที่มีการขีดเส้นใต้แทน Key Property และเชื่อมต่อกับเอนทิตีที่มี Property นั้นด้วยเส้นตรง

ภาพที่ 3.11 ตัวอย่างของ Multi-Valued Property

2.6 Derived Property

Derived Property หมายถึง Property ที่ค่าของข้อมูลในแต่ละสมาชิกของเอนทิตีได้มาจากการนำ ค่าของข้อมูลใน Property อื่นที่มีอยู่ในแต่ละสมาชิกของเอนทิตีมาทำการคำนวณ ซึ่งโดยทั่วไปไม่จำเป็นต้องจัดเก็บ Property ประเภทนี้ไว้ในระบบฐานข้อมูล เนื่องจาก Property ประเภทนี้มีการเปลี่ยนแปลงค่าของ ข้อมูลในแต่ละสมาชิกของเอนทิตีทุกครั้ง เมื่อมีการเปลี่ยนแปลงค่าของข้อมูลใน Property ที่ถูกนำมาคำนวณของแต่ละสมาชิกในเอนทิตี เช่น Property อายุปัจจุบันสามารถคำนวณได้จาก Property วัน/เดือน/ปีเกิด เป็นต้น

ในอี-อาร์ไดอะแกรม ใช้สัญลักษณ์รูปวงรี ที่มีชื่อของ Property นั้นกำกับอยู่ภายในแทนหนึ่ง Derived Property และเชื่อมต่อกับเอนทิตีที่มี Property นั้นด้วยเส้นประ

ภาพที่ 3.12 ตัวอย่างของ Derived Property

3. ความสัมพันธ์

ความสัมพันธ์ หมายถึง เอนทิตีที่แสดงความสัมพันธ์ระหว่างสองเอนทิตีขึ้นไป ซึ่งโดยทั่วไป เป็นความสัมพันธ์ระหว่างเอนทิตีที่มี Property ร่วมกัน โดยแต่ละความสัมพันธ์จะถูกระบุด้วยชื่อที่อธิบายถึงความสัมพันธ์นั้น ๆ เช่น ความสัมพันธ์สังกัดแสดงความสัมพันธ์ระหว่างเอนทิตีนักศึกษาและเอนทิตีคณะ เป็นต้น

ในอี-อาร์ไดอะแกรม ใช้สัญลักษณ์รูปสี่เหลี่ยมข้าวหลามตัด (diamond) ที่มีชื่อของความสัมพันธ์นั้นกำกับอยู่ภายในแทนหนึ่งความสัมพันธ์ และเชื่อมต่อกับเอนทิตีที่เกี่ยวข้องกับความสัมพันธ์นั้นด้วยเส้นตรง

ภาพที่ 3.13 ความสัมพันธ์ระหว่างเอนทิตีนักศึกษาและเอนทิตีคณะ

นอกจากความสัมพันธ์ระหว่างเอนทิตีที่มี Property ร่วมกันจะเป็นตัวกำหนดความสัมพันธ์ขึ้นมาแล้ว ความสัมพันธ์อาจสร้างขึ้นมาจาก Key Property ของเอนทิตีที่มีความสัมพันธ์กัน โดยความสัมพันธ์นั้นอาจมี Property ของตนเองก็ได้ เช่น ความสัมพันธ์การลงทะเบียนแสดงความสัมพันธ์ระหว่างเอนทิตี นักศึกษาและเอนทิตีชุดวิชา รวมทั้งผลการสอบในแต่ละชุดวิชาของนักศึกษาแต่ละคน เป็นต้น

ภาพที่ 3.14 ความสัมพันธ์ที่สร้างจาก Key Property ของเอนทิตีที่มีความสัมพันธ์กัน

ความสัมพันธ์ระหว่างเอนทิตีใด ๆ อาจมีมากกว่าหนึ่งความสัมพันธ์ก็ได้ เช่น ความสัมพันธ์การสอนและความสัมพันธ์การจัดการแสดงความสัมพันธ์ระหว่างเอนทิตีอาจารย์และเอนทิตีชุดวิชา เป็นต้น

ภาพที่ 3.15 ความสัมพันธ์มากกว่าหนึ่งความสัมพันธ์

เอนทิตีที่เกี่ยวข้องกับความสัมพันธ์เรียกว่า Participant ของความสัมพันธ์ และจำนวนของ Participant ในความสัมพันธ์เรียกว่า Degree ของความสัมพันธ์ (มีความหมายแตกต่างไปจาก Degree ในแบบจำลองข้อมูลเชิงสัมพันธ์) ทั้งนี้ เอนทิตีซึ่งเป็น Participant ของความสัมพันธ์อาจมีส่วนร่วมใน ความสัมพันธ์ที่สามารถจำแนกได้ 2 ลักษณะ คือ แบบ Total Participation และแบบ Partial Participation

แบบ Total Participation เป็นความสัมพันธ์ที่ทุกสมาชิกในเอนทีตีหนึ่งจะมีข้อมูลใน Property หนึ่งที่มีความสัมพันธ์กับข้อมูลในอีกหนึ่งเอนทิตี เช่น อาจารย์ทุกคนต้องสังกัดคณะใดคณะหนึ่งเท่านั้น ดังนั้น แต่ละสมาชิกในเอนทิตีอาจารย์จะมีความสัมพันธ์กับเอนทิตีคณะ เป็นต้น

ในอี-อาร์ไดอะแกรม การระบุความสัมพันธ์แบบ Total Participation ใช้สัญลักษณ์เส้นคู่ เพื่อเชื่อมต่อระหว่างความสัมพันธ์กับเอนทิตีที่ทุกสมาชิกมีความสัมพันธ์กับอีกเอนทิตีหนึ่ง

ภาพที่ 3.16 ความสัมพันธ์แบบ Total Participation

แบบ Partial Participation เป็นความสัมพันธ์ที่บางสมาชิกในเอนทีตีหนึ่งเท่านั้นจะมีข้อมูลใน Property หนึ่งที่มีความสัมพันธ์กับข้อมูลในอีกหนึ่งเอนทิตี เช่น มีนักศึกษาเพียงบางคนเท่านั้นที่เป็นผู้แทนนักศึกษาในแต่ละคณะ ดังนั้น จะมีเพียงบางสมาชิกในเอนทิตีนักศึกษาเท่านั้นที่มีความสัมพันธ์กับเอนทิตีคณะ เป็นต้น

ในอี-อาร์ไดอะแกรม การระบุความสัมพันธ์แบบ Partial Participation ใช้สัญลักษณ์เช่นเดียวกับ การแสดงความสัมพันธ์ระหว่างเอนทิตีใด ๆ ที่เกี่ยวข้อง

ภาพที่ 3.17 ความสัมพันธ์แบบ Partial Participation

ความสัมพันธ์มีหลายประเภทขึ้นอยู่กับปัจจัยที่ใช้ในการจำแนกประเภทของความสัมพันธ์ ซึ่งมี 2 ปัจจัย คือ ความสัมพันธ์ระหว่างเอนทิตี และจำนวนเอนทิตีที่เกี่ยวข้อง

3.1 ความสัมพันธ์ระหว่างเอนทิตี

การจำแนกประเภทของความสัมพันธ์ตามความสัมพันธ์ระหว่างเอนทิตี เป็นการพิจารณาถึงสัดส่วนความสัมพันธ์ระหว่างสมาชิกในเอนทิตีที่เป็น Participant ของความสัมพันธ์ซึ่งอาจเรียกอีกอย่างหนึ่งว่า Cardinality Ratio

วิธีนี้สามารถจำแนกความสัมพันธ์ได้เป็น 3 ประเภท คือ ความสัมพันธ์แบบหนึ่งต่อหนึ่ง (one to one relationship) ความสัมพันธ์แบบหนึ่งต่อกลุ่ม (one to many relationship) และ ความสัมพันธ์แบบกลุ่มต่อกลุ่ม (many to many relationship)

ความสัมพันธ์แบบหนึ่งต่อหนึ่ง หมายถึง ความสัมพันธ์ที่แต่ละสมาชิกในเอนทิตีหนึ่งมี ความสัมพันธ์กับสมาชิกในอีกหนึ่งเอนทิตีเพียงสมาชิกเดียว หรือกล่าวได้ว่า ความสัมพันธ์ดังกล่าวเป็นแบบหนึ่งต่อหนึ่ง เช่น เอนทิตีอาจารย์และเอนทิตีคณะ มีความสัมพันธ์กันแบบหนึ่งต่อหนึ่ง กล่าวคือ แต่ละคณะมีคณบดีเพียงหนึ่งคนเท่านั้น และมีอาจารย์เพียงหนึ่งคนเท่านั้นที่เป็นคณบดี เป็นต้น

ในอี-อาร์ไดอะแกรมใช้สัญลักษณ์ 1:1 กำกับเหนือเส้นที่เชื่อมต่อระหว่างความสัมพันธ์และเอนทิตีที่เกี่ยวข้องกับความสัมพันธ์นั้น

ภาพที่ 3.18 ความสัมพันธ์แบบหนึ่งต่อหนึ่ง

ความสัมพันธ์แบบหนึ่งต่อกลุ่ม หมายถึง ความสัมพันธ์ที่แต่ละสมาชิกในเอนทิตีหนึ่งมี ความสัมพันธ์กับสมาชิกในอีกหนึ่งเอนทิตีมากกว่าหนึ่งสมาชิก หรือกล่าวได้ว่า ความสัมพันธ์ดังกล่าวเป็นแบบหนึ่งต่อกลุ่ม เช่น เอนทิตีคณะและเอนทิตีนักศึกษามีความสัมพันธ์กันแบบหนึ่งต่อกลุ่ม กล่าวคือ นักศึกษาแต่ละคนมีสังกัดเพียงคณะเดียว และหนึ่งคณะอาจมีนักศึกษาในสังกัดได้หลายคน

ในอี-อาร์ไดอะแกรมใช้สัญลักษณ์ 1:M กำกับเหนือเส้นที่เชื่อมต่อระหว่างความสัมพันธ์และ เอนทิตีที่เกี่ยวข้องกับความสัมพันธ์ นั้น

ภาพที่ 3.19 ความสัมพันธ์แบบหนึ่งต่อกลุ่ม

จากภาพที่ 3.19 เอนทิตีคณะและเอนทิตีนักศึกษามีความสัมพันธ์กันแบบหนึ่งต่อกลุ่ม และเป็น ความสัมพันธ์แบบ Total Participation

ความสัมพันธ์แบบกลุ่มต่อกลุ่ม หมายถึง ความสัมพันธ์ที่สมาชิกมากกว่าหนึ่งสมาชิกใน เอนทิตีหนึ่งมีความสัมพันธ์กับสมาชิกในอีกหนึ่งเอนทิตีมากกว่าหนึ่งสมาชิก หรือกล่าวได้ว่า ความสัมพันธ์ ดังกล่าวเป็นแบบกลุ่มต่อกลุ่ม เช่น เอนทิตีนักศึกษาและเอนทิตีชุดวิชามีความสัมพันธ์กันแบบกลุ่มต่อกลุ่ม กล่าวคือ นักศึกษาแต่ละคนสามารถลงทะเบียนเรียนได้หลายชุดวิชา และแต่ละชุดวิชาสามารถมีนักศึกษาลงทะเบียนเรียนได้หลายคน

ในอี-อาร์ไดอะแกรม ใช้สัญลักษณ์ M:M กำกับเหนือเส้นที่เชื่อมต่อระหว่างความสัมพันธ์และเอนทิตีที่เกี่ยวข้องกับความสัมพันธ์ นั้น

ภาพที่ 3.20 ความสัมพันธ์แบบกลุ่มต่อกลุ่ม

3.2 จำนวนเอนทิตีที่เกี่ยวข้อง

การจำแนกประเภทของความสัมพันธ์ตามจำนวนเอนทิตีที่เกี่ยวข้อง เป็นการพิจารณาถึงจำนวนของ Participant ใน ความสัมพันธ์ หรือ Degree ของ ความสัมพันธ์

วิธีนี้สามารถจำแนกความสัมพันธ์ ได้ 2 ประเภท คือ ความสัมพันธ์แบบ Binary และ ความสัมพันธ์แบบ N-ary

ความสัมพันธ์แบบ Binary เป็นความสัมพันธ์ที่พบได้บ่อยที่สุด โดยเป็นความสัมพันธ์ที่แสดงความสัมพันธ์ระหว่างสองเอนทิตีใด ๆ เช่น ความสัมพันธ์ที่ปรึกษาแสดงความสัมพันธ์ระหว่างเอนทิตีอาจารย์ที่ปรึกษากับเอนทิตีนักศึกษา

ความสัมพันธ์แบบ N–ary เป็นความสัมพันธ์ที่แสดงความสัมพันธ์ระหว่างสองเอนทิตีขึ้นไป เช่น ความสัมพันธ์ตารางเรียนแสดงความสัมพันธ์ระหว่างเอนทิตีอาจารย์ เอนทิตีชุดวิชาที่สอน และเอนทิตี ชั้นเรียน

ภาพที่ 3.21 ความสัมพันธ์แบบ N-ary

นอกจากประเภทของความสัมพันธ์ข้างต้น ยังมีลักษณะอื่น ๆ ที่เกี่ยวข้องกับความสัมพันธ์อีก คือ Existence Dependency ความสัมพันธ์แบบ Recursive และ Composite Entity

Existence Dependency เป็นความสัมพันธ์ที่การเกิดขึ้นและคงอยู่ของเอนทิตีหนึ่งขึ้นอยู่กับการคงอยู่ของอีกเอนทิตีหนึ่งที่มีความสัมพันธ์กัน กล่าวคือ เป็นความสัมพันธ์ระหว่างเอนทิตีปกติและเอนทีตีอ่อนแอ เช่น ความสัมพันธ์แบบหนึ่งต่อกลุ่มของเอนทิตีอาจารย์ซึ่งเป็นเอนทิตีปกติและเอนทิตีตารางสอนซึ่งเป็นเอนทิตีอ่อนแอดังภาพที่ 3.7 ซึ่งเอนทิตีตารางสอนจะเกิดขึ้นและคงอยู่ได้ก็ต่อเมื่อมีการกำหนดเอนทิตีอาจารย์ขึ้นมาก่อน

ในอี-อาร์ไดอะแกรม สัญลักษณ์ที่ใช้แทนความสัมพันธ์แบบ Existence Dependency จะเป็นรูปสี่เหลี่ยมข้าวหลามตัดสองรูปซ้อนกัน

ภาพที่ 3.22 ความสัมพันธ์ แบบ Existence Dependency

จากภาพที่ 3.22 เอนทิตีอาจารย์และเอนทิตีตารางสอนมีความสัมพันธ์กันแบบหนึ่งต่อกลุ่มและเป็นความสัมพันธ์แบบ Total Participation

ความสัมพันธ์แบบ Recursive เป็นความสัมพันธ์ที่เกิดจากเอนทิตีเพียงเอนทิตีเดียว เช่น ในห้องเรียนมีนักศึกษาหลายคน แต่มีนักศึกษาเพียงหนึ่งคนเท่านั้นที่เป็นหัวหน้าห้อง และหัวหน้าห้องเป็นผู้ประสานงานกับนักศึกษาหลายคน

 ภาพที่ 3.23 ความสัมพันธ์แบบ Recursive

Composite Entities เป็นเอนทิตีที่ถูกสร้างขึ้นมาเพื่อใช้ในการแปลงความสัมพันธ์ระหว่าง เอนทิตีแบบกลุ่มต่อกลุ่มให้เป็นความสัมพันธ์แบบหนึ่งต่อกลุ่ม เนื่องจากความสัมพันธ์ระหว่างเอนทิตีแบบกลุ่มต่อกลุ่ม มักจะก่อให้เกิดความยุ่งยากเกี่ยวกับความซ้ำซ้อนในการแก้ไขปรับปรุงข้อมูลในการออกแบบฐานข้อมูล ดังนั้น จึงมีการสร้างเอนทิตีใหม่ขึ้นเรียกว่า Composite Entity หรือ Gerund

การสร้าง Composite Entity ซึ่งเป็นเอนทิตีที่เชื่อมความสัมพันธ์ระหว่างสองเอนทิตีเดิมซึ่งเป็น ความสัมพันธ์แบบกลุ่มต่อกลุ่มให้เป็นความสัมพันธ์แบบหนึ่งต่อกลุ่ม ทำได้โดยนำ Key Property ของทั้งสองเอนทิตีที่มีความสัมพันธ์กันแบบกลุ่มต่อกลุ่มมารวมกับ Property อื่นที่สนใจเป็น Property ของ Composite Entity และกำหนดให้ Key Property ของทั้งสองเอนทิตีที่มีความสัมพันธ์กันแบบกลุ่มต่อกลุ่มเป็น Key Property ของ Composite Entity

ในอี-อาร์ไดอะแกรม ใช้สัญลักษณ์รูปสี่เหลี่ยมข้าวหลามตัดบรรจุในรูปสี่เหลี่ยมผืนผ้าที่มีชื่อของ Composite Entity นั้นกำกับอยู่ภายในแทนหนึ่ง Composite Entity

ตัวอย่างเช่น เอนทิตีนักศึกษาและเอนทิตีชุดวิชามีความสัมพันธ์กันแบบกลุ่มต่อกลุ่ม กล่าวคือ นักศึกษาแต่ละคนสามารถลงทะเบียนเรียนได้หลายชุดวิชา และแต่ละชุดวิชาสามารถมีนักศึกษาลงทะเบียนเรียนได้หลายคน ดังภาพที่ 3.24 การแปลงความสัมพันธ์ระหว่างเอนทิตีนักศึกษาและเอนทิตีชุดวิชาจาก ความสัมพันธ์แบบกลุ่มต่อกลุ่มให้เป็นความสัมพันธ์แบบหนึ่งต่อกลุ่มสามารถทำได้โดย การสร้าง Composite Entity การเรียน ซึ่งประกอบด้วย Property ต่าง ๆ คือ รหัสประจำตัว (key property ของเอนทิตีนักศึกษา) รหัสชุดวิชา (key property ของเอนทิตีชุดวิชา) และ Property อื่นที่สนใจ โดย Composite Entity การเรียน จะมี Property รหัสประจำตัวและรหัสชุดวิชาเป็น Key Property

ภาพที่ 3.24 Composite Property การเรียน

4. Subtype และ Supertype

หากเอนทิตีใดสามารถจำแนกออกเป็นเอนทิตีย่อย ๆ ได้ โดยแต่ละสมาชิกในเอนทิตีย่อยนั้นสามารถมีคุณสมบัติ Identity ได้ด้วยตัวเอง เอนทิตีหลักที่ถูกนำมาจำแนกจะเรียกว่า Supertype ส่วนเอนทิตีย่อยที่จำแนกออกมาจะเรียกว่า Subtype หรืออีกนัยหนึ่งอาจกล่าวได้ว่า เอนทิตีหนึ่งจะเป็น Subtype ของอีกเอนทิตีหนึ่งที่เป็น Supertype ก็ต่อเมื่อ Subtype ประกอบด้วยทุก Property ที่มีใน Supertype โดย Subtype สามารถมี Property เพิ่มเติมจาก Supertype ได้

ตัวอย่างเช่น เอนทิตีนักศึกษาประกอบด้วย 4 Property คือ รหัสประจำตัว ชื่อ-สกุล เพศ และรหัสคณะ โดยมี Property รหัสประจำตัวเป็น Identity ส่วนเอนทิตีนักศึกษาภาคปกติซึ่งเป็น Subtype ของ Supertype เอนทิตีนักศึกษาอาจประกอบด้วย 6 Property คือ รหัสประจำตัว ชื่อ-สกุล เพศ รหัสคณะ ผู้สนับสนุนการศึกษา และจำนวนเงินที่ได้รับต่อเดือน โดยมี Property รหัสประจำตัวเป็น Identity และเอนทิตีนักศึกษาภาคพิเศษซึ่งเป็น Subtype ของ Supertype เอนทิตีนักศึกษาอาจประกอบด้วย 7 Property คือ รหัสประจำตัว ชื่อ-สกุล เพศ รหัสคณะ ตำแหน่งงาน สถานที่ทำงาน และเงินเดือน โดยมี Property รหัส ประจำตัวเป็น Identity เป็นต้น

ภาพที่ 3.25 ภาพแสดง Subtype และ Supertype

 

 

Last Updated: 12/13/2001 11:23:19 AM
© โครงการเครือข่ายสารสนเทศเพื่อพัฒนาการศึกษา ทบวงมหาวิทยาลัย