บทที่ 4 แบบจำลองฐานข้อมูลเชิงสัมพันธ์ Relational Database
ทบทวน ประโยชน์ของระบบฐานข้อมูล จัดการปัญหา ความซ้ำซ้อนของข้อมูล (Data Redundancy) จัดการปัญหา ความขัดแย้งของข้อมูล (Data Inconsistency) มีความเป็นอิสระของข้อมูล (Data Independence) มีมาตรฐานเดียวกัน (Standard) มีความปลอดภัย และ มุมมองผู้ใช้ (Security and View)
ประวัติของแบบจำลองฐานข้อมูลเชิงสัมพันธ์ แบบจำลองฐานข้อมูลแบบเชิงสัมพันธ์ พัฒนาโดยนาย อี เอฟ คอดด์ (E.F.Codd) ในปี ค.ศ.1970 ในเอกสารงานวิจัยชื่อ “A relational model of data for large shared data banks” ซึ่งวัตถุประสงค์หลัก ของแบบจำลองฐานข้อมูลแบบเชิงสัมพันธ์ คือ 1. มีคุณสมบัติความเป็นอิสระของข้อมูล (Data independence) สูง 2.และสามารถจัดการในส่วนหลกัของความหมายของคำ (Data semantic) 3. ความคงเส้นคงวาของข้อมูล (Consistency) 4. แก้ปัญหาความซ้ำซ้อนของข้อมูล (Redundancy problems) ได้โดยใช้การจัด บรรทัดฐานรีเลชัน
โครงสร้างของข้อมูลแบบเชิงสัมพันธ์ รีเลชั่น: นักศึกษา Relation: Student
โครงสร้างของข้อมูลแบบเชิงสัมพันธ์ รีเลชั่น: นักศึกษา Relation: Student
โครงสร้างของข้อมูลแบบเชิงสัมพันธ์ รีเลชั่น: นักศึกษา Relation: Student 1 2 3 4 5
โครงสร้างของข้อมูลแบบเชิงสัมพันธ์
โครงสร้างของข้อมูลแบบเชิงสัมพันธ์
โครงสร้างของข้อมูลแบบเชิงสัมพันธ์ 1 2 3
โครงสร้างของข้อมูลแบบเชิงสัมพันธ์
โครงสร้างของข้อมูลแบบเชิงสัมพันธ์
โครงสร้างของข้อมูลแบบเชิงสัมพันธ์ Relation = { A1 , A2 , A3 , … An } นักศึกษา = { รหัส , ชื่อ , ที่อยู่ , โทรศัพท์ , อายุ }
กุญแจ KEY นักศึกษา ค้นหา ข้อมูลจากอะไร? อาจารย์อยากทราบว่า นักศึกษารหัส 54889956 คือใคร? อยากทราบว่าค่าไฟที่บ้าน เดือน มีนาคม 2559 กี่บาท?
กุญแจ KEY คีย์ (Key) เป็นองค์ประกอบที่สำคัญที่ช่วยในการกำหนดความแตกต่างและความสัมพันธ์ของข้อมูลในตาราง หรือรีเลชัน และสามารถอธิบายความหมายของคีย์ที่ใช้ในแบบจำลองข้อมูลแบบเชิงสัมพันธ์
กุญแจ KEY มีสิทธิ์เป็น เลือกมาเป็น
กุญแจ KEY
กุญแจ KEY
กุญแจ KEY
กุญแจ KEY PK FK
กุญแจ KEY
กุญแจ KEY
สคีมาแนวความคิด (Conceptual schema) สคีมาแนวความคิด (Conceptual schema) หรือแบบจำลองแนวความคิด (Conceptual model) คือ กลุ่มของสคีมา ทั้งหมดของฐานข้อมูล เช่น ฐานข้อมูลของมหาวิทยาลัย มีกลุ่มสคีมา ของนักศึกษา อาจารย์ คณะ รายวิชา กลุ่มเรียน อาคาร เป็นตน
สคีมาแนวความคิด (Conceptual schema) รีเลชัน นักศึกษา (รหัส, ชื่อ, ที่อยู่, เพศ, หมายเลขบัตรประชาชน) รีเลชัน อาจารย์ (ชื่อ, นามสกุล,รหัส, วันเดือนปีเกิด, ที่อยู่ เพศ, ตำแหน่ง, เงินเดือน, รหัสคณะ) รีเลชัน คณะ (รหัส, ชื่อคณะ) รีเลชัน รายวิชา (รหัสวิชา, ชื่อวิชา, หน่วยกิต)
สคีมาแนวความคิด (Conceptual schema) รีเลชัน นักศึกษา (รหัส, ชื่อ, ที่อยู่, เพศ, หมายเลขบัตรประชาชน) ที่อยู่ เพศ ชื่อ หมายเลขบัตรประชาชน รหัส นักศึกษา
สคีมาแนวความคิด (Conceptual schema)
สคีมาแนวความคิด (Conceptual schema)
สคีมาแนวความคิด (Conceptual schema) รหัสลงทะเบียน รหัสนักศึกษา รหัสรายวิชา ภาคเรียน ปีการศึกษา รหัสผู้สอน ผลการเรียน 0000001 4112400001 411000 1 2559 32140 A
สคีมาแนวความคิด (Conceptual schema) PK FK รหัสลงทะเบียน รหัสนักศึกษา รหัสรายวิชา ภาคเรียน ปีการศึกษา รหัสผู้สอน ผลการเรียน 0000001 4112400001 411000 1 2559 32140 A
ข้อบังคับของแบบจำลองข้อมูลแบบเชิงสัมพันธ์ Relational Constraints มีไว้สำหรับการกำหนดให้สคีมามีความถูกต้อง และเมื่อสคีมาถูกต้องจะส่งผลให้การจัดการข้อมูลมีความถูกต้องตามไปด้วย สุดท้าย ข้อมูล ที่ถูกจัดเก็บภายในฐานข้อมูล จะมีประสิทธิภาพสูง
ข้อบังคับของแบบจำลองข้อมูลแบบเชิงสัมพันธ์ Relational Constraints ข้อบังคับที่เกี่ยวกับโดเมน (Domain Constraint) ข้อบังคับที่เกี่ยวกับคีย์ (Key Constraint) ข้อบังคับที่เกี่ยวกับความบูรณภาพ (Integrity Constraint) ข้อบังคับความบูรณภาพของเอนทิตี (Entity integrity constraint) ข้อบังคับความบูรณภาพของการอ้างอิง (Referential integrity constraint)
ข้อบังคับของแบบจำลองข้อมูลแบบเชิงสัมพันธ์ Relational Constraints ข้อบังคับที่เกี่ยวกับโดเมน (Domain Constraint) เป็นข้อบังคับที่เกี่ยวกับการกำหนดค่าของแต่ละลักษณะประจำ (Attribute) ใหสอดคล้องกับค่าที่กำหนดไว้ในโดเมน และค่าของแต่ละลักษณะประจำนั้นจะต้องมี ค่าๆ เดียว (Atomic) ตามค่าที่กำหนดไว้ในโดเมน
ข้อบังคับของแบบจำลองข้อมูลแบบเชิงสัมพันธ์ Relational Constraints 2. ข้อบังคับที่เกี่ยวกับคีย์ (Key Constraint) ลักษณะประจำใดที่เป็นกุญแจหลักห้ามซ้ำ เพิ่มใหม่ (INSERT) สมหญิง, ดีงาม, 21564, 8/5/1983, N/A, หญิง, อาจารย์2, 10,000, 3 เพิ่มใหม่ (INSERT) สมหญิง, ดีงาม, 54423, 8/5/1983, N/A, หญิง, อาจารย์2, 10,000, 3
ข้อบังคับของแบบจำลองข้อมูลแบบเชิงสัมพันธ์ Relational Constraints 3.1 ข้อบังคับความบูรณภาพของเอนทิตี (Entity integrity constraint) กำหนดว่า ห้าม Primary Key เป็นค่าว่าง สมหญิง, ดีงาม, 54423, 8/5/1983, N/A, หญิง, อาจารย์2, 10,000, 3
ข้อบังคับของแบบจำลองข้อมูลแบบเชิงสัมพันธ์ Relational Constraints 3.2 ข้อบังคับความบูรณภาพของการอ้างอิง (Referential integrity constraint) กำหนดว่า FK จะต้อง ตรงกับ PK และ PK เป็นค่าว่างไม่ได้