หน่วยที่ 1 ความรู้เบื้องต้นเกี่ยวกับฐานข้อมูล
เรื่อง ฐานข้อมูลเชิงสัมพันธ์
_________________________________________________________________
หน่วยที่ 1 ความรู้เบื้องต้นเกี่ยวกับฐานข้อมูล
เรื่อง ฐานข้อมูลเชิงสัมพันธ์
เรื่อง ฐานข้อมูลเชิงสัมพันธ์
ความหมายของฐานข้อมูลเชิงสัมพันธ์
เป็นการจัดเก็บรวบรวมข้อมูลเป็นแถวและคอลัมน์ในลักษณะตารางสองมิติ ที่ประกอบด้วย แอททริบิวต์ที่แสดงคุณสมบัติขิงรีเลชั่นหนึ่งๆ ฐานข้อมูลเชิงสัมพันธ์เป็นฐานข้อมูลซึ่งให้ภาพของข้อมูลในระดับ ภายนอก(ExternalLevel)และระดับแนวความคิด(ConceptualLevel)
คําศัพท์พื้นฐานเกี่ยวกับโมเดลเชิงสัมพันธ์
1. รีเลชัน(Relation) ประกอบด้วยแถวและคอลัมน์ของข้อมูลซึ่งเรียกได้อีกอย่างว่า ตาราง (Table)
2. ทูพเพิล(tuple) คือ แถวแต่ละแถวในตารางจะมีความหมายเหมือนกับระเบียน
3. แอททริบิวท์(attribute) คือ คอลัมน์แต่ละคอลัมน์ของตารางจะมีความหมายเหมือนกับเขตข้อมูล
4. คาร์ดินัลลิตี้(Cardinality) คือ จํานวนทูพเพิลที่มีอยู่ในรีเลชัน
5. ดีกรี(Degree) คือ จํานวนแอททริบิวท์ที่มีอยู่ในรีเลชัน
2. ทูพเพิล(tuple) คือ แถวแต่ละแถวในตารางจะมีความหมายเหมือนกับระเบียน
3. แอททริบิวท์(attribute) คือ คอลัมน์แต่ละคอลัมน์ของตารางจะมีความหมายเหมือนกับเขตข้อมูล
4. คาร์ดินัลลิตี้(Cardinality) คือ จํานวนทูพเพิลที่มีอยู่ในรีเลชัน
5. ดีกรี(Degree) คือ จํานวนแอททริบิวท์ที่มีอยู่ในรีเลชัน
ข้อดีของฐานข้อมูลเชิงสัมพันธ์
1. ฐานขอมูลเชิงสัมพันธ์เป็นกลุ่มของรีเลชันหรือตารางที่ข้อมูลถูกจัดเก็บ เป็นแถวและคอลัมน์ ซึ่งทําให้ผู้ใช้เห็นภาพของข้อมูลได้ง่าย
2. ผู้ใช้ไม่ต้องรู้ว่าข้อมูลถูกจัดเก็บจริงอย่างไร รวมถึงวิธีการเรียกใช้ข้อมูล
3. ภาษาที่ใช้ในการเรียกดูข้อมูลเป็นลักษณะคล้ายภาษาอังกฤษและไม่จําเป็นต้องเขียนเป็นลําดับขั้นตอน
2. ผู้ใช้ไม่ต้องรู้ว่าข้อมูลถูกจัดเก็บจริงอย่างไร รวมถึงวิธีการเรียกใช้ข้อมูล
3. ภาษาที่ใช้ในการเรียกดูข้อมูลเป็นลักษณะคล้ายภาษาอังกฤษและไม่จําเป็นต้องเขียนเป็นลําดับขั้นตอน
คุณลักษณะในการจัดเก็บข้อมูลของรีเลชั่น
1. ข้อมูลในแต่ละทูพเพิลจะไม่ซ้ำกัน ทั้งนี้เพราะการจัดการฐานข้อมูลที่ดีไม่ควรจะมีข้อมูลที่ซ้ำซ้อนปรากฏอยู่ในรีเลชั่น โดยระบบจัดการฐานข้อมูล จะมี กลไกที่ใช้ในการควบคุมไม่ให้มีความซ้ำซ้อนเกิดขึ้น
2. การเรียงลําดับของข้อมูลในแต่ละทูพเพิลไม่ถือว่าสําคัญ การจัดเก็บของข้อมูลในรีเลชั่น จะถูกจัดเรียงตามลําดับลงบนสื่อที่เก็บข้อมูล แต่การเรียกใช้ข้อมูลในรีเลชั่นสามารถเรียกใช้ตามที่ผู้ใช้ต้องการ
3. การเรียงลําดับของข้อมูลในแต่ละแอททริบิวท์ไม่ถือว่าสําคัญ ไม่มีการระบุว่าแอททริบิวท์ซ้ายสุดคือ แอททริบิวท์แรก หรือแอททริบิวท์ขวาสุด คือแอททริบิวท์สุดท้ายทั้งนี้เพราะการอ้างอิงถึงแอททริบิวท์ใดจะใช้ชื่อ คือ แอททริบิวท์สุดท้าย ทั้งนี้เพราะการอ้างอิงถึงแอททริบิวท์ใดจะใช้ชื่อ ของแอททริบิวท์นั้นๆในการอ้างอิง มาใช้ลําดับที่แอททริบิวท์นั้นปรากฏ
4. ข้อมูลที่อยู่ในแอททริบิวท์เดียวกันจะต้องมีชนิดข้อมูลเป็นแบบเดียวกัน
5. แต่ละแอททริบิวท์จะต้องมีชื่อแอททริบิวท์ที่แตกต่างกัน
6. ค่าของข้อมูลในแต่ละแอททริบิวท์ของทูพเพิลหนึ่งๆจะบรรจุขอมูลได้เพียงค่าเดียวไม่ใช้กลุ่มของข้อมูลที่แสดงค่าที่มากกว่าหนึ่งแถว (Repeater Group)
5. แต่ละแอททริบิวท์จะต้องมีชื่อแอททริบิวท์ที่แตกต่างกัน
6. ค่าของข้อมูลในแต่ละแอททริบิวท์ของทูพเพิลหนึ่งๆจะบรรจุขอมูลได้เพียงค่าเดียวไม่ใช้กลุ่มของข้อมูลที่แสดงค่าที่มากกว่าหนึ่งแถว (Repeater Group)
โดเมน (Domain)
เป็นการนิยามขอบเขตของค่าที่เป็นไปได้ให้กับข้อมูลในแต่ละ Attribute เพื่อป้องกันไม่ให้เกิดการป้อนขูอมูลที่เกินขอบเขตที่กําหนด
คุณสมบัติของโดเมน
1. ค่าที่นิยามให้กับข้อมลจะต้องมีค่าเป็น Scalar
2. ข้อมูลที่สามารถนํามากําหนด Domain ได้ จะต้องเป็นข้อมูลที่เป็นอิสระ จากข้อมูลอื่น
3. ข้อมูลที่สามารถนํามากําหนดโดเมนได้จะต้องเป็นข้อมูลประเภทเดียวกัน
4. โดเมนที่กําหนดให้กับ Attribute ที่จะต้องถูก Attribute อื่นอ้างถึง สามารถถ่ายทอดโดเมนของตนให้กับ Attribute ในอีก Relation หนึ่งที่อ้างถึงไปด้วย
5. ค่าของโดเมนที่กําหนดให้กับข้อมูล ไม่จําเป็นที่จะต้องปรากฏอยู่ในข้อมูลนั้น ๆ
2. ข้อมูลที่สามารถนํามากําหนด Domain ได้ จะต้องเป็นข้อมูลที่เป็นอิสระ จากข้อมูลอื่น
3. ข้อมูลที่สามารถนํามากําหนดโดเมนได้จะต้องเป็นข้อมูลประเภทเดียวกัน
4. โดเมนที่กําหนดให้กับ Attribute ที่จะต้องถูก Attribute อื่นอ้างถึง สามารถถ่ายทอดโดเมนของตนให้กับ Attribute ในอีก Relation หนึ่งที่อ้างถึงไปด้วย
5. ค่าของโดเมนที่กําหนดให้กับข้อมูล ไม่จําเป็นที่จะต้องปรากฏอยู่ในข้อมูลนั้น ๆ
ประเภทของรีเลชั่น
2. วิว (View) เป็นรีเลชั่นที่ถูกสร้างขึ้นตามความต้องการใช้ข้อมูลของผู้ใช้แต่ละคน
คีย์ (Key)
เพื่อเพิ่มประสิทธิภาพในการจัดการข้อมูลควรกำหนด คีย์ (Key) ให้กับตารางเพื่อใช้จำแนกทูพเพิลและกำหนดความสัมพันธ์ระหว่างตาราง เช่น กำหนดรหัสประจำตัวให้กับนักเรียนทุกคนในตารางนักเรียน
ประเภทของคีย์
1. คีย์หลัก (Primary Key) แอททริบิวท์หรือกลุ่มของแอททริบิวท์ที่มีข้อมูลไม่ซ้ำกัน ประกอบด้วยจํานวนแอททริบิวท์ที่น้อยที่สุดที่จะสามารถใช้เจาะจง หรืออ้างอิงถึงแถวใดแถวหนึ่งในรีเลชั่นได้
2. คีย์รวม (Composite Key) ประกอบด้วยแอททริบิวท์มากกว่าหนึ่งแอททริบิวท์มารวมกันเป็น
คีย์หลัก
คีย์หลัก
5. คีย์นอก (Foreign Key) เป็นแอททริบิวท์หรือกลุ่มของแอททริบิวท์ที่อยู่ในรีเลชั่นหนึ่ง ๆ ที่ค่าของแอททริบิวท์นั้นไปปรากฏเป็นคีย์หลักในอีกรีเลชั่น(หรืออาจเป็น รีเลชั่นเดิมก็ได้)
6. ค่าว่าง (Null Values) แอททริบิวท์ที่ไม่มีค่าข้อมูลเก็บอยู่ ไม่ใช่ช่องว่างหรือเลข 0