แบบจำลองไดอะแกรมความสัมพันธ์ของเอนทิตี (ER) พร้อมตัวอย่าง DBMS

⚡ สรุปอย่างชาญฉลาด

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

  • 🔍 แนวคิดหลัก: แผนภาพ ER กำหนดโครงสร้างฐานข้อมูลผ่านองค์ประกอบหลักสามส่วน ได้แก่ เอนทิตี คุณลักษณะ และความสัมพันธ์ เพื่อให้มั่นใจได้ว่ามีการจับคู่ที่ชัดเจนระหว่างวัตถุข้อมูลและการโต้ตอบระหว่างกัน
  • 🧱 สัญลักษณ์โครงสร้าง: รูปสี่เหลี่ยมผืนผ้าแสดงถึงเอนทิตี รูปวงรีแสดงถึงคุณลักษณะ และรูปเพชรแสดงถึงความสัมพันธ์ เส้นเชื่อมแสดงถึงการเชื่อมโยงเชิงตรรกะ โดยคุณลักษณะที่ขีดเส้นใต้แสดงถึงคีย์หลัก
  • ⚙️ การจำแนกประเภทเอนทิตี: เอนทิตีจะถูกจัดกลุ่มเป็นชุด โดยแต่ละชุดจะถูกระบุด้วยคีย์หรือคุณลักษณะเฉพาะ เอนทิตีแบบอ่อนจะไม่มีคีย์ที่เป็นอิสระและต้องอาศัยเอนทิตีแบบแข็งในการระบุ โดยใช้สี่เหลี่ยมผืนผ้าสองชั้นและเส้นประขีดใต้
  • 🔗 คำจำกัดความของความสัมพันธ์: ความสัมพันธ์แสดงถึงความเชื่อมโยงระหว่างเอนทิตี (เช่น "นักเรียนลงทะเบียนเรียนในหลักสูตร") และแบ่งประเภทตามจำนวนความสัมพันธ์ ได้แก่ หนึ่งต่อหนึ่ง หนึ่งต่อหลาย หลายต่อหนึ่ง หรือหลายต่อหลาย
  • 🧩 ประเภทแอตทริบิวต์: คุณลักษณะอาจเป็นแบบง่าย แบบผสม แบบได้มา หรือแบบหลายค่า ซึ่งกำหนดคุณสมบัติข้อมูลที่แตกต่างกัน เช่น ชื่อ วันที่ และฟิลด์ที่คำนวณได้
  • 🧭 ขั้นตอนการสร้างแผนภาพ ERD: ระบุเอนทิตี สร้างความสัมพันธ์ กำหนดจำนวนเชิงปริมาณ กำหนดแอตทริบิวต์ และกำหนดคีย์หลักก่อนที่จะสร้างไดอะแกรมให้สมบูรณ์
  • 📈 แบบฝึกหัดการเพิ่มประสิทธิภาพ: ลบส่วนที่ซ้ำซ้อน ติดป้ายกำกับส่วนประกอบทั้งหมด และคงไว้ซึ่งการปรากฏของเอนทิตีที่ไม่ซ้ำกันเพื่อความชัดเจน พร้อมทั้งตรวจสอบให้แน่ใจว่าแผนภาพรองรับข้อกำหนดการจัดเก็บข้อมูลที่จำเป็นทั้งหมด

ไดอะแกรมความสัมพันธ์ของนิติบุคคล

แผนภาพ ER คืออะไร?

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

แผนภาพ ER ประกอบด้วยสัญลักษณ์ต่างๆ โดยใช้รูปสี่เหลี่ยมผืนผ้าแทนเอนทิตี รูปวงรีแทนคุณลักษณะ และรูปเพชรแทนความสัมพันธ์

เมื่อมองแวบแรก แผนภาพ ER ดูคล้ายกับผังงานมาก อย่างไรก็ตาม แผนภาพ ER ประกอบด้วยสัญลักษณ์เฉพาะทางมากมาย และความหมายของสัญลักษณ์เหล่านั้นทำให้แบบจำลองนี้มีเอกลักษณ์เฉพาะตัว จุดประสงค์ของแผนภาพ ER คือการแสดงโครงสร้างพื้นฐานของเฟรมเวิร์กเอนทิตี

ตัวอย่างไดอะแกรม ER
ตัวอย่างแผนภาพความสัมพันธ์เอนทิตี

ประวัติความเป็นมาของแบบจำลอง ER

ปีเตอร์ เฉิน เสนอแผนภาพ ER ในปี 1976 ในบทความสำคัญของเขาเรื่อง “แบบจำลองเอนทิตี-ความสัมพันธ์: สู่มุมมองที่เป็นหนึ่งเดียวของข้อมูล” เป้าหมายของเขาคือการสร้างแบบแผนที่เป็นเอกภาพที่สามารถใช้ได้ทั้งในฐานข้อมูลเชิงสัมพันธ์และเครือข่าย เฉินมองว่าแบบจำลอง ER เป็นแนวทางการสร้างแบบจำลองเชิงแนวคิดที่จะเชื่อมช่องว่างระหว่างความต้องการในโลกแห่งความเป็นจริงและการนำฐานข้อมูลไปใช้ในทางเทคนิค

นับตั้งแต่นั้นมา โมเดล ER ได้พัฒนาขึ้นโดยใช้ระบบสัญลักษณ์ต่างๆ รวมถึงสัญลักษณ์ Chen (แบบดั้งเดิม) สัญลักษณ์ Crow's Foot (ซึ่งเป็นที่นิยมในเครื่องมือสมัยใหม่) และวิธีการที่ใช้ UML เป็นพื้นฐาน แม้จะมีความแตกต่างกันเหล่านี้ แต่แนวคิดหลักยังคงสอดคล้องกันในทุกการใช้งาน

เหตุใดจึงต้องใช้แผนภาพ ER?

แผนภาพ ER มีประโยชน์มากมายสำหรับการออกแบบและพัฒนาฐานข้อมูล:

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

ส่วนประกอบของแผนภาพ ER

แผนภาพ ER ทุกแผนภาพสร้างขึ้นจากส่วนประกอบหลักสามส่วน ได้แก่ เอนทิตี คุณลักษณะ และความสัมพันธ์ การทำความเข้าใจส่วนประกอบแต่ละส่วนและวิธีการทำงานร่วมกันนั้นมีความสำคัญอย่างยิ่งต่อการสร้างการออกแบบฐานข้อมูลที่มีประสิทธิภาพ

ตัวอย่างไดอะแกรม ER

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

ส่วนประกอบของแผนภาพ ER

ส่วนประกอบของแผนภาพ ER

หน่วยงาน

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

ตัวอย่างของเอนทิตี้จำแนกตามหมวดหมู่:

  • ผู้ที่: พนักงาน, นักเรียน, ผู้ป่วย, ลูกค้า
  • สถานที่: ร้านค้า, อาคาร, สำนักงาน, คลังสินค้า
  • วัตถุ: เครื่องจักร, ผลิตภัณฑ์, รถยนต์, หนังสือ
  • เหตุการณ์: การขาย การลงทะเบียน การต่ออายุ การทำธุรกรรม
  • แนวคิด: บัญชี, หลักสูตร, ภาควิชา, โครงการ

ตัวอย่างของเอนทิตีใน DBMS

ชุดเอนทิตี

เซตของเอนทิตี คือกลุ่มของเอนทิตีที่คล้ายคลึงกันซึ่งมีคุณลักษณะร่วมกัน ตัวอย่างเช่น นักศึกษาทุกคนในมหาวิทยาลัยจะรวมกันเป็นเซตของเอนทิตี “นักศึกษา” เอนทิตีจะถูกแสดงในแผนภาพ ER โดยใช้รูปสี่เหลี่ยมผืนผ้า โดยมีชื่อของเอนทิตีเขียนอยู่ภายใน

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

เอกลักษณ์

เอนทิตีที่แข็งแกร่งเทียบกับเอนทิตีที่อ่อนแอ

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

เอนทิตีที่แข็งแกร่งจะมีคีย์หลักของตัวเองและสามารถดำรงอยู่ได้อย่างอิสระ ตัวอย่างเช่น เอนทิตี "นักเรียน" สามารถระบุได้อย่างเฉพาะเจาะจงด้วยรหัสประจำตัวนักเรียน (Student_ID) โดยไม่ต้องขึ้นอยู่กับเอนทิตีอื่นใด

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

หน่วยงานที่อ่อนแอ

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

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

ความสัมพันธ์แสดงถึงการเชื่อมโยงระหว่างเอนทิตีสองหรือมากกว่าสองเอนทิตี โดยทั่วไปแล้ว ความสัมพันธ์จะถูกระบุโดยใช้คำกริยาหรือวลีคำกริยาที่อธิบายว่าเอนทิตีเหล่านั้นมีปฏิสัมพันธ์กันอย่างไร ในแผนภาพ ER ความสัมพันธ์จะแสดงด้วยรูปทรงเพชร ตัวอย่าง: ทอมทำงานในแผนกเคมี

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

หน่วยงานมีส่วนร่วมในความสัมพันธ์ เรามักจะสามารถระบุความสัมพันธ์กับคำกริยาหรือวลีคำกริยาได้

ตัวอย่าง:

  • คุณกำลังเข้าร่วมการบรรยายครั้งนี้
  • ฉันกำลังบรรยาย
  • นักเรียนคนหนึ่งเข้าร่วมการบรรยาย
  • อาจารย์กำลังบรรยายอยู่

คุณสมบัติ

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

คุณสมบัติ

ตัวอย่างเช่น เอนทิตีนักเรียนอาจมีแอตทริบิวต์ต่างๆ เช่น รหัสนักเรียน ชื่อ วันเกิด อีเมล และหมายเลขโทรศัพท์

ประเภทของคุณสมบัติ

ประเภทแอตทริบิวต์ Descriptไอออน ตัวอย่าง
เรียบง่าย (Atomไอซี) ไม่สามารถแบ่งย่อยออกเป็นส่วนประกอบที่เล็กกว่านี้ได้อีกแล้ว หมายเลขโทรศัพท์, หมายเลขประกันสังคม, อีเมล
ประกอบด้วย สามารถแบ่งย่อยออกเป็นคุณลักษณะย่อยที่เล็กกว่าได้ ชื่อ-นามสกุล (ชื่อจริง, ชื่อกลาง, นามสกุล), ที่อยู่ (ถนน, เมือง, รหัสไปรษณีย์)
ที่ได้มา ค่าจะถูกคำนวณจากคุณลักษณะอื่นๆ ไม่ได้ถูกจัดเก็บโดยตรง อายุ (คำนวณจากวันเดือนปีเกิด) ราคารวม
หลายค่า สามารถเก็บค่าได้หลายค่าสำหรับเอนทิตีเดียว เบอร์ติดต่อ Numbersที่อยู่อีเมล, ทักษะ
คุณสมบัติที่สำคัญ ระบุตัวตนเฉพาะของแต่ละอินสแตนซ์ของเอนทิตี (คีย์หลัก) รหัสนักศึกษา, รหัสพนักงาน, ISBN

เคล็ดลับสำคัญ: ในแผนภาพ ER คุณลักษณะหลักจะแสดงด้วยชื่อที่ขีดเส้นใต้ คุณลักษณะที่ได้มาจะแสดงด้วยวงรีเส้นประ และคุณลักษณะที่มีหลายค่าจะแสดงด้วยวงรีสองชั้น

ความสัมพันธ์เชิงปริมาณ (ประเภทความสัมพันธ์)

คาร์ดินาลิตี้ (Cardinality) กำหนดข้อจำกัดเชิงตัวเลขของความสัมพันธ์ โดยเฉพาะอย่างยิ่ง จำนวนอินสแตนซ์ของเอนทิตีหนึ่งที่สามารถเชื่อมโยงกับอินสแตนซ์ของเอนทิตีอื่นได้ การเข้าใจคาร์ดินาลิตี้เป็นสิ่งสำคัญสำหรับการออกแบบโครงสร้างฐานข้อมูลที่มีประสิทธิภาพ

cardinality

1. หนึ่งต่อหนึ่ง (1:1)

เอนทิตีหนึ่งจากเซต A สามารถเชื่อมโยงกับเอนทิตีหนึ่งจากเซต B ได้มากที่สุดหนึ่งเอนทิตี และในทางกลับกัน

ตัวอย่าง: นักเรียนแต่ละคนจะได้รับรหัสประจำตัวนักเรียนเพียงรหัสเดียว และรหัสประจำตัวนักเรียนแต่ละรหัสจะเป็นของนักเรียนเพียงคนเดียวเท่านั้น

คาร์ดินัลลิตี้แบบหนึ่งต่อหนึ่ง

2. หนึ่งต่อหลาย (1:N)

เอนทิตีหนึ่งจากเซต A สามารถเชื่อมโยงกับเอนทิตีหลายตัวจากเซต B ได้ แต่เอนทิตีแต่ละตัวในเซต B จะเชื่อมโยงกับเอนทิตีเพียงหนึ่งตัวในเซต A เท่านั้น

ตัวอย่าง: หนึ่งชั้นเรียนประกอบด้วยนักเรียนหลายคน

คาร์ดินัลลิตี้แบบหนึ่งต่อกลุ่ม

3. ความสัมพันธ์แบบหลายต่อหนึ่ง (N:1)

เอนทิตีหลายตัวจากเซต A สามารถเชื่อมโยงกับเอนทิตีหนึ่งตัวจากเซต B ได้

ตัวอย่างเช่น นักเรียนจำนวนมากอยู่ในชั้นเรียนเดียวกัน

คาร์ดินัลลิตีหลายต่อหนึ่ง

4. ความสัมพันธ์แบบหลายต่อหลาย (M:N)

เอนทิตีหลายตัวจากเซต A สามารถเชื่อมโยงกับเอนทิตีหลายตัวจากเซต B ได้ และในทางกลับกันก็เช่นกัน

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

คาร์ดินัลลิตี้แบบหลายต่อหลายรายการ

สัญลักษณ์และสัญกรณ์ในแผนภาพ ER

แผนภาพ ER ใช้สัญลักษณ์มาตรฐานเพื่อแสดงส่วนประกอบต่างๆ แม้จะมีระบบการเขียนสัญลักษณ์หลายระบบ แต่สองระบบที่ใช้กันอย่างแพร่หลายที่สุดคือ ระบบการเขียนสัญลักษณ์แบบเฉิน (Chen Notation) และระบบการเขียนสัญลักษณ์แบบตีนกา (Crow's Foot Notation)

สัญกรณ์เฉิน

สัญกรณ์เฉิน (Chen Notation) ซึ่งพัฒนาโดยปีเตอร์ เฉิน ในปี 1976 ใช้รูปทรงเรขาคณิตเพื่อแทนธาตุต่างๆ:

สัญลักษณ์ ชื่อ หมายถึง
รูปสี่เหลี่ยมผืนผ้า เอกลักษณ์ เอนทิตีที่แข็งแกร่ง (เช่น นักเรียน ผลิตภัณฑ์)
Double รูปสี่เหลี่ยมผืนผ้า เอนทิตีที่อ่อนแอ เอนทิตีที่ขึ้นกับเอนทิตีอื่น (เช่น ธุรกรรม)
วงรี/รูปไข่ คุณลักษณะ คุณสมบัติของหน่วยงาน (เช่น ชื่อ, รหัสประจำตัว)
Double รูปแบบรีอย่างไข่ คุณลักษณะหลายค่า คุณลักษณะที่มีหลายค่า (เช่น หมายเลขโทรศัพท์) Numbers)
วงรีเส้นประ คุณลักษณะที่ได้มา ค่าที่คำนวณได้ (เช่น อายุจากวันเกิด)
เพชร ความสัมพันธ์ ความสัมพันธ์ระหว่างหน่วยงานต่างๆ (เช่น ผู้ลงทะเบียน)
Double เพชร การระบุความสัมพันธ์ ความสัมพันธ์กับหน่วยงานที่อ่อนแอ
Line ลิงค์ เชื่อมต่อส่วนประกอบต่างๆ เข้าด้วยกัน
ข้อความที่ขีดเส้นใต้ คีย์หลัก ตัวระบุเฉพาะสำหรับเอนทิตี

สัญลักษณ์ตีนกา

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

สัญลักษณ์ Descriptไอออน ความหมาย
เส้นแนวตั้งเดี่ยว (|) บังคับหนึ่ง (เพียงหนึ่งเดียวเท่านั้น)
วงกลมที่มีเส้น (O|) ตัวเลือกที่สอง (ศูนย์หรือหนึ่ง)
ตีนกาที่มีเส้น (>|) บังคับเลือกหลายรายการ (หนึ่งรายการขึ้นไป)
ตีนกาที่มีวงกลม (>O) ตัวเลือกเสริม หลายรายการ (ศูนย์รายการขึ้นไป)

สัญลักษณ์เฉินเทียบกับสัญลักษณ์ตีนกา: ควรใช้สัญลักษณ์ใดในสถานการณ์ใด

แง่มุม สัญกรณ์เฉิน สัญลักษณ์ตีนกา
ที่ดีที่สุดสำหรับ การสร้างแบบจำลองเชิงแนวคิด การใช้งานเชิงวิชาการ การสร้างแบบจำลองทางกายภาพ/ตรรกะ การใช้งานในอุตสาหกรรม
การแสดงคุณลักษณะ แสดงคุณสมบัติทั้งหมดให้เห็นได้ชัดเจน แสดงรายการแอตทริบิวต์ภายในกล่องเอนทิตี
cardinality ใช้ตัวเลข (1, N, M) ใช้สัญลักษณ์ภาพ
ความซับซ้อน อาจรกได้ กะทัดรัดและสะอาดกว่า
การสนับสนุนเครื่องมือ การสนับสนุนเครื่องมือสมัยใหม่มีจำกัด ได้รับการสนับสนุนอย่างกว้างขวางในเครื่องมือต่างๆ

วิธีการสร้างไดอะแกรมความสัมพันธ์ของเอนทิตี (ERD)

ในบทเรียนการสร้างแผนภาพ ER (ERD) นี้ เราจะเรียนรู้วิธีการสร้างแผนภาพ ER ขั้นตอนในการสร้างแผนภาพ ER มีดังนี้:

สร้างไดอะแกรมความสัมพันธ์เอนทิตี

ขั้นตอนในการสร้างไดอะแกรม ER

มาศึกษาด้วยตัวอย่างแผนภาพความสัมพันธ์ของเอนทิตี:

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

ขั้นตอนที่ 1) การระบุเอนทิตี

เรามีหน่วยงานหลักสามหน่วยงาน:

  • นักเรียน
  • คอร์ส
  • ศาสตราจารย์

การระบุเอนทิตี

ขั้นตอนที่ 2) การระบุความสัมพันธ์

เรามีความสัมพันธ์สองอย่างดังต่อไปนี้:

  • นักเรียนก็คือ ที่ได้รับมอบหมาย หลักสูตร
  • ศาสตราจารย์ มอบ หลักสูตร

การระบุความสัมพันธ์

ขั้นตอนที่ 3) การระบุจำนวนสมาชิก

จากโจทย์ที่กำหนด เราทราบว่า:

  • สามารถมอบหมายนักเรียนได้ หลาย หลักสูตร
  • ศาสตราจารย์สามารถส่งมอบได้เท่านั้น หนึ่ง หลักสูตร

การระบุคาร์ดินัลลิตี

ขั้นตอนที่ 4) ระบุคุณลักษณะ

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

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

เมื่อการแมปเสร็จสิ้น ให้ระบุคีย์หลัก หากไม่มีคีย์เฉพาะ ให้สร้างขึ้นใหม่

เอกลักษณ์ คีย์หลัก คุณลักษณะ
นักเรียน รหัสนักศึกษา ชื่อนักเรียน
ศาสตราจารย์ รหัสพนักงาน ศาสตราจารย์ชื่อ
คอร์ส หลักสูตร_ID ชื่อหลักสูตร

ขั้นตอนในการสร้างไดอะแกรมความสัมพันธ์เอนทิตี

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

ขั้นตอนที่ 5) สร้างแผนภาพ ERD

ตัวอย่างแผนภาพความสัมพันธ์ระหว่างเอนทิตี (Entity Relationship Diagram) ในรูปแบบที่ทันสมัยยิ่งขึ้น:

สร้างไดอะแกรม ERD

แนวปฏิบัติที่ดีที่สุดสำหรับการสร้างแผนภาพ ER ที่มีประสิทธิภาพ

ปฏิบัติตามคำแนะนำเหล่านี้เพื่อสร้างแผนภาพ ER ที่ชัดเจน บำรุงรักษาได้ และมีประสิทธิภาพ:

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

แผนภาพ ER เทียบกับแผนภาพคลาส UML

แม้ว่าทั้งแผนภาพ ER และแผนภาพคลาส UML จะถูกใช้สำหรับการสร้างแบบจำลองข้อมูล แต่ก็มีจุดประสงค์และบริบทที่แตกต่างกัน การเข้าใจว่าควรใช้แผนภาพใดในสถานการณ์ใดจึงเป็นสิ่งสำคัญสำหรับการออกแบบระบบที่มีประสิทธิภาพ

แง่มุม ER ไดอะแกรม แผนภาพคลาส UML
วัตถุประสงค์หลัก การออกแบบฐานข้อมูล การออกแบบซอฟต์แวร์/วัตถุ
โฟกัส ข้อมูลและความสัมพันธ์ วัตถุ วิธีการ และพฤติกรรม
วิธีการ/Operations ไม่ได้รับการสนับสนุน รองรับอย่างเต็มที่
มรดก จำกัด (เฉพาะใน EER เท่านั้น) สนับสนุนอย่างเต็มที่
การใช้ในอุตสาหกรรม ผู้ดูแลระบบฐานข้อมูล นักวิเคราะห์ข้อมูล นักพัฒนาซอฟต์แวร์ สถาปนิก

คำถามที่พบบ่อย

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

แผนภาพ ER หลักๆ มีสองประเภท ได้แก่ แผนภาพ ER เชิงแนวคิด (ซึ่งแสดงความสัมพันธ์และเอนทิตีระดับสูงโดยไม่มีรายละเอียดการใช้งาน) และแผนภาพ ER เชิงกายภาพ (ซึ่งแสดงรายละเอียดโครงสร้างฐานข้อมูล ประเภทข้อมูล คีย์ และข้อจำกัดสำหรับการใช้งานจริง)

ในการสร้างแผนภาพ ER: (1) ระบุเอนทิตีหลักจากข้อกำหนดของคุณ (2) กำหนดความสัมพันธ์ระหว่างเอนทิตี (3) กำหนดคาร์ดินัลลิตีตามกฎทางธุรกิจ (4) กำหนดแอตทริบิวต์สำหรับแต่ละเอนทิตี (5) ระบุคีย์หลัก และ (6) วาดแผนภาพโดยใช้สัญลักษณ์ที่เหมาะสม

การเลือกใช้ขึ้นอยู่กับบริบทของคุณ สัญกรณ์เฉิน (Chen Notation) เหมาะที่สุดสำหรับการออกแบบเชิงแนวคิดและการใช้งานในเชิงวิชาการ ในขณะที่สัญกรณ์ตีนกา (Crow's Foot Notation) นิยมใช้สำหรับการออกแบบเชิงตรรกะ/ทางกายภาพในภาคอุตสาหกรรม เครื่องมือฐานข้อมูลสมัยใหม่ส่วนใหญ่รองรับสัญกรณ์ตีนกา

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

ในแพลตฟอร์ม DBMS บนคลาวด์ แผนภาพ ER ช่วยชี้นำการจัดสรรทรัพยากร การปรับขนาด และการจัดการคำสั่งค้นหาโดยอัตโนมัติ แผนภาพเหล่านี้ช่วยให้เครื่องมือที่ขับเคลื่อนด้วย AI สามารถปรับโครงสร้างข้อมูลให้สอดคล้องกับการคาดการณ์ปริมาณงานและความต้องการของผู้ใช้แบบเรียลไทม์ ซึ่งช่วยเพิ่มประสิทธิภาพของระบบ

แม้ว่า AI แบบสร้างสรรค์จะสามารถเสนอแบบจำลอง ER เบื้องต้นจากข้อกำหนดทางธุรกิจหรือชุดข้อมูลที่มีอยู่ได้ แต่การกำกับดูแลโดยมนุษย์ยังคงมีความสำคัญอย่างยิ่งในการตรวจสอบความสัมพันธ์ บังคับใช้ข้อจำกัด รับรองความสอดคล้องเชิงตรรกะ และตรวจสอบความสอดคล้องกับกฎทางธุรกิจที่แท้จริงในระบบการผลิต

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

สรุปโพสต์นี้ด้วย: