1 / 15

บทที่ 4 ฐานข้อมูลเชิงสัมพันธ์

บทที่ 4 ฐานข้อมูลเชิงสัมพันธ์. Relational Database. Topics. ความหมายของฐานข้อมูลเชิงสัมพันธ์ ศัทพ์ที่เกี่ยวข้อง คุณสมบัติของ Relation ประเภทของ Key ประเภทของ Relation. โครงสร้างฐานข้อมูลเชิงสัมพันธ์. รีเลชัน (Relation)

zev
Download Presentation

บทที่ 4 ฐานข้อมูลเชิงสัมพันธ์

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. บทที่ 4 ฐานข้อมูลเชิงสัมพันธ์ Relational Database

  2. Topics • ความหมายของฐานข้อมูลเชิงสัมพันธ์ • ศัทพ์ที่เกี่ยวข้อง • คุณสมบัติของ Relation • ประเภทของ Key • ประเภทของ Relation

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

  4. โครงสร้างของรีเลชัน ชื่อรีเลชั่น ช่องข้อมูล (Cell) นักศึกษา แถว หรือ ทัพเพิล คอลัมน์ หรือ แอททริบิวท์ จำนวนของแอททริบิวท์ในรีเลชั่นเรียกว่า ดีกรี (Degree) ของรีเลชั่น จำนวนแถวข้อมูลที่อยู่ในรีเลชันเรียกว่า คาร์ดินัลลิตี (Cardinality)

  5. ศัพท์ที่เกี่ยวข้อง • Relationคือ ตารางเก็บข้อมูล แบบสองมิติ ที่ประกอบด้วยแถวและหลัก แต่ละช่องตารางบรรจุ ข้อมูลค่าเดียว (single value) • Tupleคือ ข้อมูลในแต่ละแถว ( row หรือ record) • Attribute คือ รายละเอียดของข้อมูลในแต่ละคอลัมน์ ( column หรือ field) ชื่อ attribute ใน Relation เดียวกัน ต้องแตกต่างกัน • Degree คือ จำนวนของ attribute หรือจำนวนคอมลัมน์ ในตารางใด ๆ • Cardinalityคือจำนวนของแถวในตาราง • Domainคือ ขอบเขตของค่าต่างๆ ที่เป็นไปได้ในแต่ละคอลัมน์

  6. คุณสมบัติของรีเลชั่น (Properties Of Relation) • ช่อง(Cell) แต่ละช่องของตารางจะเก็บข้อมูลได้เพียงค่าเดียว • ชนิดข้อมูล ข้อมูลที่อยู่ในคอลัมน์เดียวกันจะต้องมีชนิดข้อมูล (Data Type) เป็นแบบเดียวกัน เช่น คอลัมน์รหัสนักศึกษา ของทุกแถวจะต้องมีข้อมูลที่เป็นตัวเลขเท่านั้น • ชื่อคอลัมน์ แต่ละคอลัมน์ของรีเลชันหนึ่ง ๆ จะต้องมีชื่อคอลัมน์ที่แตกต่างกัน ส่วนลำดับของคอลัมน์ก่อนและหลังไม่ถือว่าสำคัญ • แถว ข้อมูลแต่ละแถว่ารีเลชันหนึ่ง ๆ จะต้องแตกต่างกันไม่ซ้ำกัน การเรียงลำดับของแถวไม่ถือว่าสำคัญ • โดเมน(Domain) คือกลุ่มหรือขอบเขตของข้อมูลทั้งหมดที่เป็นไปได้ • ค่าว่าง ถ้ามีแอททริบิวต์ใดไม่มีค่าข้อมูลเก็บอยู่ จะเรียกค่าในแอททริบิวต์นั้นว่า ค่าว่าง (Null Values)

  7. ประเภทของคีย์ (Keys) • Key คือ Attribute หรือ กลุ่มของ Attribute ที่สามารถแยกความแตกต่างของข้อมูลในแต่ละแถวได้ หรือ Key คือ Attribute ที่มีข้อมูลไม่ซ้ำกัน • ประเภทของคีย์ • คีย์หลัก (Primary Key) • คีย์ร่วม (Composite Key) • คีย์นอก (Foreign Key) • คีย์คู่แข่งและคีย์สำรอง (Candidate Keyand Alternate Key)

  8. คีย์หลัก (Primary Key : PK) • ข้อมูลของแอททริบิวต์ที่เป็นคีย์หลัก จะมีความเป็นหนึ่งเดียว คือ ทุก ๆ แถวของตารางจะต้องไม่มีข้อมูลของแอททริบิวต์ที่เป็นคีย์หลักนี้ซ้ำกัน สรุป (ค่าในคอลัมย์ที่ถูกเลือกมาเป็นคีย์หลักของตารางจะต้องไม่ซ้ำกัน นั่นเอง) • คีย์หลักของแต่ละตารางจะต้องประกอบด้วยจำนวนแอททริบิวต์ที่น้อยที่สุด และสามารถอ้างอิงถึงแถวแต่ละแถวในรีเลชั่นหรือตารางได้ • แอททริบิวต์ที่เป็นคีย์หลักของรีเลชันจะแทนได้ด้วยการขีดเส้นใต้แอททริบิวต์ดังกล่าว เช่น ในรีเลชันนักศึกษา จะมีรหัสนักศีกษาเป็นคีย์หลัก • คีย์หลัก จะเป็นค่าว่าง (Null) ไม่ได้ นักศึกษา (รหัสนักศึกษา,เพศ,ชื่อนักศึกษา,วันเดือนปีเกิด,ที่อยู่,เบอร์โทร,รหัสคณะ)

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

  10. คีย์ร่วม (Composite Key) ตารางผลการเรียน สามารถเขียน เป็น แบบจำลองฐานข้อมูลเชิงสัมพันธ์ได้ดังนี้ ผลการเรียน(รหัสนักศึกษา,รหัสวิชา,ปีการศึกษา,เกรด) คีย์ร่วม • จากตาราง • ถ้าใช้รหัสนักศึกษาอย่างเดียวเป็นคีย์หลักจะไม่สามารถระบุความแตกp • ต่างของแถวได้ เพราะมีรหัสที่เหมือนกัน • ถ้าใช้ รหัสนักศึกษา และ รหัสวิชา ทั้งสองตัวร่วมกัน จะระบุได้ว่าแต่ละแถวต่างกัน • ดังนั้น สรุปได้ว่า ตารางผลการเรียนมีคีย์หลักของตารางคือ รหัสนักศึกษา และ รหัสวิชา เรียกคีย์มี่มีลักษณะนี้ว่า คีย์ร่วม

  11. คีย์คู่แข่งและคีย์สำรอง (Candidate Keyand Alternate Key) • รีเลชันหรือตารางทั่วไป อาจจะมีหลายแอททริบิวต์ที่มีคุณสมบัติที่สามารถเลือกมาเป็นคีหลักของตารางได้ จะเรียกกลุ่มของแอททริบิวต์เหล่านี้ว่า คีย์คู่แข่ง • เช่นตารางนี้มี รหัสลูกค้า และ เลขที่บัตรประชาชน เป็น candidate key • ถ้าเลือก รหัสลูกค้าเป็น คีย์หลัก ของตาราง นี้ เลขที่บัตรประชาชนจะเป็น คีย์สำรอง คีย์สำรอง คีย์หลัก

  12. คีย์นอก(Foreign Key : FK) • คีย์นอก ใช้แสดงความสัมพันธ์ระหว่างรีเลชันหรือตาราง มีคุณสมบัติดังนี้ • คีย์นอก เป็นแอททริบิวต์หรือกลุ่มของแอททริบิวต์ที่อยู่ในรีเลชั่น หนึ่ง ๆ ที่ค่าของแอททริบิวต์นั้นไปปรากฏเป็นคีย์หลักใน อีกรีเลชันหรือตาราง (หรืออาจเป็นรีเลชันหรือตารางเดิมก็ได้) • คีย์นอก เปรียบเสมือนกาวเชื่อมข้อมูลในรีเลชันหนึ่งกับอีกรีเลชั่นหนึ่ง ซึ่งเป็นการสร้างความสัมพันธ์ระหว่างรีเลชั่น • คีย์นอกและคีย์หลักของอีกรีเลชั่นที่มีความสัมพันธ์กัน จะต้องอยู่ภายใต้โดเมนเดียวกัน และคีย์นอกไม่จำเป็นต้องมีชื่อเหมือนกับคีย์หลักของอีกรีเลชั่นที่มีความสัมพันธ์กัน • รีเลชั่นหนึ่ง ๆ อาจจะมีคีย์นอกอยู่หรือไม่มีก็ได้ แต่ทุกรีเลชั่นจะต้องมีคีย์หลักเสมอ

  13. คีย์นอก(Foreign Key : FK) ตารางพนักงาน รหัสแผนกเป็นคีย์นอกของตารางพนักงาน ตารางแผนก เขียนเป็นแบบจำลองฐานข้อมูลเชิงสัมพันธ์ได้ดังนี้ พนักงาน แผนก

  14. ประเภทของ Relation 1) Relation หลัก (Base Relation) เป็นรีเลชั่นจริงที่ถูกสร้างขึ้นมาเพื่อใช้เก็บข้อมูล เช่น รีเลชั่น Student สำหรับเก็บข้อมูลนักศึกษา 2) Virtual Relation หรือ วิว (View)เป็นรีเลชั่นเสมือนที่ถูกสร้างขึ้นมาตามความต้องการของผู้ใช้ เนื่องจากผู้ใช้แต่ละคนอาจต้องการข้อมูลที่แตกต่างกันโดยเอาข้อมูลใน Attribute ที่ต้องการจากรีเลชั่นหลักมาแสดงผล สามารถนำมาจากรีเลชั่นหลัก เพียงรีเลชั่นเดียวหรือหลายรีเลชั่นก็ได้

  15. ประเภทของ Relation Major STUDENT Relation หลัก Virtual Relation

More Related