แบบจำลองความสัมพันธ์ระหว่างข้อมูล (Model)
· Entity-Relationship Model
หรือเรียกอีกอย่างว่า “E-R Model” เป็น Data Model เป็นที่นิยมอย่างแพร่หลาย เป็นเครื่องมือที่ดีมากและมีโครงสร้างสำคัญเพิ่มขึ้นมา คือ “E-R Diagram” ใช้แสดงความสัมพันธ์ระหว่างข้อมูลในฐานข้อมูล
· Data Model
คือ แบบจำลองที่ใช้เป็นเครื่องมือในการแสดงโครงสร้างภายในระบบฐานข้อมูล โดยใช้รูปภาพเป็นสื่อ ทำให้ง่ายต่อการเข้าใจและการเรียนรู้ เข้าใจโครงสร้างพื้นฐานของระบบได้ง่าย
คุณสมบัติของ Data Model
1. Expressiveness คือ ต้องเป็นเครื่องมือที่สามารถแสดงหรืออธิบายโครงสร้างของข้อมูล ได้ชัดเจนและครบถ้วน
2. Simplicity คือ ต้องทำให้ง่ายต่อการเข้าใจ ไม่ซับซ้อน
3. Minimality คือ ลักษณะโครงสร้างของข้อมูลแต่ละชนิด ต้องชัดเจน และไม่กำกวม
4. Formality คือ ข้อมูลแต่ละชนิดต้องไม่ซ้ำซ้อน มีรูปแบบเป็นมาตรฐาน
องค์ประกอบของ E-R Model
โครงสร้างพื้นฐานของ E-R Model ได้แก่ Entity, Attribute, Relationship, Key, Domain เป็นต้น
คำศัพท์พื้นฐานแบบจำลองความสัมพันธ์ระหว่างข้อมูล (Model)
1. Entity Set คือ กลุ่มของความสัมพันธ์ภายในกลุ่มของ Entity เดียวกัน เช่น Entity Set ของนักเรียน นอกจากนั้นยังประกอบด้วย Entity อาจารย์ , Entity วิชา ประกอบในระบบด้วย ซึ่งมี 2 ประเภทคือ
· Strong Entity Set คือ Entity Set ใด ๆ ที่มี Attribute ภายในเพียงพอที่จะสามารถทำหน้าที่เป็น Primary Key ได้
Weak Entity Set คือ Entity Set ที่มีลักษณะตรงกันข้ามกับ Strong Entity Set คือ กลุ่มของ Entity Set ใด ๆ ที่ Attribute ภายในทั้งหมด แม้จะรวมกันแล้วยังไม่สามารถทำหน้าที่เป็น Primary
Key ให้กับ Entity Set
2. Relationship Set คือ กลุ่มของ Relationship ที่มีความลัมพันธ์และอยู่ในประเภทเดียวกันมารวมเข้าด้วยกัน
3. Primary Key มีคุณสมบัติดังนี้
· ข้อมูลของคอลัมน์ ทุก ๆ แถวของตารางจะต้องไม่มีข้อมูลซ้ำกันเลย
· ต้องประกอบไปด้วย Attribute ที่น้อยที่สด ที่สามารถในการอ้างอิงถึงข้อมูล ใน Tuple ใด Tuple หนึ่งได้
4. Existence Dependency คือ เหตุการณ์ที่ Entity จะเกิดขึ้นได้และคงอยู่ได้ ต้องขึ้นอยู่กับการมีหรือเกิดขึ้นของอีก Entity เช่น Entity รายการฝาก-ถอน จะเกิดขึ้นได้ก็ต่อเมื่อมี Entity ลูกค้า
ER model (Entity-Relationship Model)
:: เสนอครั้งแรกโดย ปีเตอร์(Chen,1976 - 2519) เป็นเครื่องมือนำเสนอโครงสร้างของฐานข้อมูลใน ระดับความคิด(Conceptual level)ออกมาในลักษณะของแผนภาพ(Diagram) ที่ง่ายต่อความเข้าใจ เพื่อสื่อความหมายระหว่างนักออกแบบฐานข้อมูล และผู้ใช้ เกี่ยวกับ ความสัมพันธ์ของเอนติตี้(Entity) กับเอนติตี้(Entity) และเอนติตี้(Entity) กับ แอททริบิวท์(Attibute)
ส่วนประกอบของ ER model
- เอ็นติตี้ (Entity)
- แอททริบิวท์ (Attribute)
- ความสัมพันธ์ระหว่างเอ็นติตี้ (Relationship)
- ดีกรีของความสัมพันธ์ (Degree of a relation)
- เอ็นติตี้ (Entity)
- แอททริบิวท์ (Attribute)
- ความสัมพันธ์ระหว่างเอ็นติตี้ (Relationship)
- ดีกรีของความสัมพันธ์ (Degree of a relation)
ขั้นตอนการเขียน ER model 3.1 สร้าง entity ขึ้นมาจากความต้องการของผู้ใช้ 3.2 สร้างความสัมพันธ์(Relation) ระหว่าง entity 3.3 พิจารณา key ของแต่ละ entity 3.4 พิจารณาคุณสมบัติของ entity แต่ละตัว |
4.2 กำหนดความสัมพันธ์ (Relationship type) ที่เกิดขึ้นระหว่าง entity ในลักษณะของกริยา
ดีกรีของความสัมพันธ์(Degree of relation) มี 4 แบบ
4.2.1 Unary relationship คือความสัมพันธ์ภายใน entity เดียวกัน เช่นแต่งงานของพนักงาน แต่ถ้ามีระดับแบบลูกน้อง หัวหน้าจะเรียก Recursive relationship(Unary)
4.2.2 Binary relationship คือความสัมพันธ์แบบสอง entity
4.2.3 Ternary relationship คือความสัมพันธ์แบบสาม entity
4.2.4 Quaternary relationship คือความสัมพันธ์แบบสี่ entity
4.2.1 Unary relationship คือความสัมพันธ์ภายใน entity เดียวกัน เช่นแต่งงานของพนักงาน แต่ถ้ามีระดับแบบลูกน้อง หัวหน้าจะเรียก Recursive relationship(Unary)
4.2.2 Binary relationship คือความสัมพันธ์แบบสอง entity
4.2.3 Ternary relationship คือความสัมพันธ์แบบสาม entity
4.2.4 Quaternary relationship คือความสัมพันธ์แบบสี่ entity
4.3 กำหนดแอททริบิวท์ (Attribute) ของแต่ละเอนติตี้
แอททริบิวท์(Attibute) อาจเรียก field หรือ column คือ สิ่งที่ใช้อธิบายคุณสมบัติของเอนติตี้ เช่นคุณสมบัติของคน ก็มี รหัส ชื่อ อายุ เพศ เป็นต้น
คำต่าง ๆ ที่ควรทราบ
- คีย์หลัก (Primary key) คีย์หลักประจำแฟ้ม
คุณสมบัติของคีย์หลัก
1. ข้อมูลของแอททริบิวท์มีความเป็นหนึ่งเดียว(Uniqueness) กล่าวคือทุก ๆ แถวของตารางจะต้องไม่มีข้อมูลของแอททริบิวท์ที่เป็นคีย์หลักซ้ำกันเลย
2. ต้องประกอบด้วยจำนวนแอททริบิวท์ที่น้อยที่สุด(Minimality) ที่จะสามารถใช้เจาะจง หรืออ้างอิงถึงแถวใดแถวหนึ่งในรีเลชันได้
- คีย์คู่แข่ง (Candidate key) คีย์ที่สามารถเป็น Primary key ได้ เช่น รหัสบัตรประชาชน หรือรหัสผู้เสียภาษี
- คีย์สำรอง (Alternate key) คีย์ตัวอื่น ๆ ในตารางหลังจากเลือก primary key แล้ว
- คีย์นอก (Foreign key) คีย์ตัวอื่น ๆ ในตารางหลังจากเลือก primary key แล้ว
- คีย์ร่วม (Composite key) สามารถแยกออกไปได้อีก เช่น ที่อยู่
- Composite attibute สามารถแยกออกไปได้อีก เช่น ที่อยู่
- Atomic attibute ไม่สามารถแยกออกไปได้อีก เช่น นามสกุล
- Multivalued attibute อาจมีหลายค่าได้ เช่น สีรถ
- Derived attibute ไม่มีค่าแน่นอนของตน แต่ขึ้นกับค่าอื่น เช่นอายุ ขึ้นกับปีเกิด และปีปัจจุบัน
- Entity type :: ชื่อของ entity เช่น course (courseno,coursename)
- Entity instance :: ค่าภายในของ entity เช่น bcom101,Introduction to comput
ไม่มีความคิดเห็น:
แสดงความคิดเห็น