แนวคิดเกี่ยวกับ ER-DIAGRAM
ER-DIAGRAM ประกอบด้วยองค์ประกอบพื้นฐานดังนี้
- เอนทิตี้ (Entity) เป็นวัตถุ หรือสิ่งของที่เราสนใจในระบบงานนั้น ๆ
- แอททริบิว (Attribute) เป็นคุณสมบัติของวัตถุที่เราสนใจ
- ความสัมพันธ์ (Relationship) คือ ความสัมพันธ์ระหว่างเอนทิตี้
เอนทิตี้ (Entity)
เอนทิตี้ หมายถึง สิ่งของหรือวัตถุที่เราสนใจ ซึ่งอาจจับต้องได้และเป็นได้ทั้งนามธรรม โดยทั่วไป เอนทิตี้จะมีลักษณะที่แยกออกจากกันไป เช่น เอนทิตี้พนักงาน จะแยกออกเป็นของพนักงานเลย เอนทิตี้เงินเดือนของพนักงานคนหนึ่งก็อาจเป็นเอนทิตี้หนึ่งในระบบของโรงงาน
โดยทั่วไปแล้ว เอนทิตี้จะมีกลุ่มที่บอกคุณสมบัติที่บอกลักษณะของเอนทิตี้ เช่น พนักงานมีรหัส ชื่อ นามสกุล และแผนก โดยจะมีค่าของคุณสมบัติบางกลุ่มที่ทำให้สามารถแยกเอนทิตี้ออกจากเอนทิตี้ อื่นได้ เช่น รหัสพนักงานที่จะไม่มีพนักงานคนไหนใช้ซ้ำกันเลย เราเรียกค่าวของคุณสมบัติกลุ่มนี้ว่าเป็นคีย์ของเอนทิตี้
แอททริบิวท์ (Attribute)
Attribute คือ คุณสมบัติของวัตถุหรือสิ่งของที่เราสนใจ โดยอธิบายรายละเอียดต่าง ๆ ที่เกี่ยวข้องกับลักษณะของเอนทิตี้ โดยคุณสมบัตินี้มีอยู่ในทุกเอนทิตี้ เช่น ชื่อ นามสกุล ที่อยู่ แผนก เป็น Attribute ของเอนทิตี้พนักงาน
โดยทั่วไปแล้วโมเดลข้อมูล เรามักจะพบว่า Attribute มีลักษณะข้อมูลพื้นฐานอยู่โดยที่ไม่ต้องมีคำอธิบายมากมาย และ Attribute ก็ไม่สามารถอยู่แบบโดด ๆ ได้โดยที่ไม่มีเอนทิตี้หรือความสัมพันธ์
รูปสัญลักษณ์ของ Attribute คือ รูปวงรีโดยที่จะมีเส้นเชื่อมต่อกับเอนทิตี้
ความสัมพันธ์ (Relationship)
เอนทิตี้แต่จะต้องมีความสัมพันธ์ร่วมกัน โดยจะมีชื่อแสดงความสัมพันธ์ร่วมกันซึ่งจะใช้รูปภาพสัญลักษณ์สี่เหลี่ยมรูป ว่าวแสดงความสัมพันธ์ระหว่างเอนทิต
ี้และระบุชื่อความสัมพันธ์ลงในสี่เหลี่ยม ดังตัวอย่างเช่น รูปนี้แสดงให้เห็นถึงความสัมพันธ์ระหว่างเอนทิตี้อาจารย์กับกลุ่มเรียน
ระดับชั้นของความสัมพันธ์ (Relationships Degree) จะบอกถึงความสัมพันธ์ระหว่างเอนทิตี้ มีดังนี้
- ความสัมพันธ์เอนทิตี้เดียว (Unary Relationships) หมายถึง เอนทิตี้หนึ่ง ๆ จะมีความสัมพันธ์กับตัวมันเอง
- ความสัมพันธ์สองเอนทิตี้ (Binary Relationships) หมายถึง เอนทิตี้สองเอนทิตี้จะมีความสัมพันธ์กัน
- ความสัมพันธ์สามเอนทิตี้(Ternary Relationships) หมายถึง เอนทิตี้สามเอนทิตี้มีความสัมพันธ์กัน
การแปลง E-R MODEL ให้อยู่ในรูปแบบโครงสร้างฐานข้อมูลหรือตารางของข้อมูลมีกฎดังนี้
1.แปลงเอนทิตี้ที่มีความสัมพันธ์แบบหนึ่งต่อหนึ่ง (One to One Relationships) ไปเป็นตาราง โดยแทนที่หนึ่งเอนทิตี้เป็นหนึ่งตาราง Attribute แต่ละเอนทิตี้เป็นฟิลด์หรือคอลัมน์แต่ละตาราง
2.แปลงเอนทิตี้ที่มีความสัมพันธ์แบบหนึ่งต่อกลุ่ม (One to Many Relationships) ไปเป็นตาราง โดยด้านเอนทิตี้ที่เป็นตัวเลข 1 นั้นสามารถแปลงเป็นตารางได้ทันที Attribute ของเอนทิตี้นั้นจะเป็นฟิลด์ของตารางทันที ส่วนด้านเอนทิตี้ที่เป็นตัวอักษร M ให้แผลงเอนทิตี้เป็นตารางโดยมี Attribute ของเอนทิตี้ตัวมันเอง และนำคีย์หลักของเอนทิตี้ที่เป็นเลข 1 มาใส่ฟิลด์ของตารางนั้นด้วย
3.แปลงเอนทิตี้ที่มีความสัมพันธ์แบบกลุ่มต่อกลุ่ม (Many to Many Relationships) ไปเป็นตารางโดยสร้างเอนทิตี้กลาง (Composite Entity) เอนทิตี้กลางจะนำคีย์หลักของทั้งสองตารางมาเป็นคีย์หลักของเอนทิตี้กลางด้วย ส่วนเอนทิตี้ทั้งสองที่อยู่ระหว่างเอนทิตี้กลางก็แปลงเป็นตารางได้ โดยนำเอา Attribute ของแต่ละเอนทิตี้ไปเป็นฟิลด์ (ทำตามกฎของความสัมพันธ์แบบหนึ่งต่อหนึ่ง)
สัญลักษณ์ | ความหมาย | สัญลักษณ์ | ความหมาย |
| Entity set |
| Discriminator key attribute |
| Weak entity set | Composite attribute | |
| Relationship set |
| Derived attribute |
| Identifying relationship set |
| Key attribute |
| Attribute |
| Multi valued attribute |
ภาพที่ 10.7 แสดงสัญลักษณ์ของ E-RMODEL
การเริ่มต้นโครงการและการศึกษาเบื้องต้น
Entity | วัตถุ หรือวิ่งของที่ราสนใจ |
Attribute | คุณสมบัติของวัตถุที่เราสนใจ |
Relationship | ความสัมพันธ์ระหว่าง เอนทิตี้ |
Simple Attribute | Attribute ที่ไม่สามารถแยกออกเป็นส่วนย่อย |
Composite Attribute | Attribute ที่สามารถแยกออกเป็นส่วนย่อย |
Single-valued | ค่าของเอนทิตี้ที่สามารถมีได้แค่ค่าเดียว |
Multi-valued | ค่าที่เป็นได้มากกว่า 1 ค่า |
Stored Attribute | Attribute ที่เก็บอยู่ในฐานข้อมูล |
Derived Attribute | Attribute ที่เกิดจากการคำนวณ |
Relationships Degree | ระดับชั้นของความสัมพันธ์ |
Unary Relationships | ความสัมพันธ์เอนทิตี้เดียว |
Binary Relationships | ความสัมพันธ์สองเอนทิตี้ |
Ternary Relationships | ความสัมพันธ์สามเอนทิตี้ |
Connectivity | การระบุความสัมพันธ์ระหว่างเอนทิตี้ |
One to One Relationships | ความสัมพันธ์แบบหนึ่งต่อหนึ่ง |
One to Many Relationships | ความสัมพันธ์แบบหนึ่งต่อกลุ่ม |
Many to Many Relationships | ความสัมพันธ์แบบกลุ่มต่อกลุ่ม |
Super Key | กลุ่มของ Attribute ซึ่งมีค่าแตกต่างกัน |
Candidate Key | Subset ที่เล็กที่สุดของ Super Key |
Primary Key | Candidate Key ที่ถูกเลือกให้เป็นตัวระบุ |
Composite Entity | เอนทิตี้กลาง |
Weak Entity | เอนทิตี้ที่ไม่มี Primary Key เป็นของตนเอง |
Strong Entity | เอนทิตี้ที่มี Primary Key เป็นของตนเอง |
นายต้น เหรียญรุ่งเรือง ( ต้น )
ขอบคุณ ต้น ที่ ช่วย นำเรื่อง ER-Diagram มาเล่าให้เพื่อนฟัง อยากเห็นตัวอย่าง ER ของกลุ่มต้นน่ะว่าเป็นอย่างไร
ตอบลบ