บทที่2

ฐานข้อมูลเชิงสัมพันธ์

ความหมายของระบบฐานข้อมูลเชิงสัมพันธ์

   ระบบฐานข้อมูลเชิงสัมพันธ์ เป็นฐานข้อมูลที่มีการจัดเก็บข้อมูลในรูปของตารางแบบ 2 มิติ ที่ประกอบด้วยข้อมูลแต่ละแถวในแนวนอน ซึ่งหมายถึงแต่ละระเบียบและข้อมูลแต่ละสดมภ์ในแนวตั้งซึ่งหมายถึงข้อมูลแต่ละเขตข้อมูล ที่มีความสัมพันธ์กัน ทำให้สามารถเชื่อมโยงหรือสร้างความสัมพันธ์ระหว่างกลุ่มข้อมูลหรือตารางที่เกี่ยวข้องกันในฐานข้อมูลเดียวกันได้ง่าย


คำศัพท์พื้นฐานของระบบฐานข้อมูลเชิงสัมพันธ์


ศัพท์เฉพาะศัพท์ทั่วไป
รีเลชั่น (Relation)ตาราง (Table)
ทูเปิล (Tuple)แถว (Row) หรือ เรคคอร์ด (Record) หรือ ระเบียน
แอททริบิวท์ (Attribute)คอลัมน์ (Column) หรือฟิลด์ (Field)
คาร์ดินัลลิติ้ (Cardinality)จำนวนแถว (Number of rows)
ดีกรี (Degree)จำนวนแอททริบิวท์ (Number of attribute)
คีย์หลัก (Primary key)ค่าเอกลักษณ์ (Unique identifier)
โดเมน (Domain)ขอบข่ายของค่าของข้อมูล (Pool of legal values)




1.รีเลชัน (Relation) หรือจะเรียกอีกอย่างว่า ตาราง (table) หรือในรูปแบบของความสัมพันธ์ระหว่างข้อมูล (E-R Model) เรียกว่า เอนทิตี (Entity) เป็นการแสดงถึงรูปแบบของตาราง 2 มิติ ที่ประกอบด้วยคอลัมน์และแถวของข้อมูล
2.แอททริบิวท์ (Attribute) หรือ คอลัมน์ (Column) เป็นการแสดงถึงคุณลักษณะของรีเลชัน อาจจะเรียกว่า เขตข้อมูล เช่น รีเลชัน “สินค้า” ประกอบด้วยคอลัมน์ที่แสดงถึงแอททริบิวท์ต่างๆ ได้แก่ รหัสสินค้า ชื่อสินค้า จำนวนสินค้าคงเหลือ เป็นต้น
3.ทัพเพิล (tuple)จะเรียกอีกอย่างว่า แถว (Row) หรือ เรคอร์ด (record) แถวจะเป็นที่เก็บสมาชิกของรีเลชัน ดังนั้น แถวแต่ละแถวในรีเลชันจะต้องมีคุณสมบัติที่เหมือนกันหมด หรือ มีข้อมูลตามคอลัมน์ที่เป็นคุณลักษณะของรีเลชันเดียวกัน
4.คาร์ดินอลลิตี้ (Cardinality) คือ จำนวนของทัพเพิลในหนึ่งรีเลชัน หรือ จำนวนแถวในหนึ่งตาราง
5. ดีกรี (Degree) คือ จำนวนแอททริบิวท์ในหนึ่งรีเลชัน หรือ จำนวนคอลัมน์ในหนึ่งตาราง ยกตัวอย่างข้อมูลพนักงาน เพื่ออธิบายองค์ประกอบของรีเลชัน
6.โดเมน (Domain) คือ กลุ่มหรือขอบเขตของข้อมูลที่เป็นไปได้ของแต่ละแอททริบิวท์ เช่น โดเมนของแอททริบิวท์กำหนดเพศ ประกอบด้วย เพศหญิง กับ เพศชาย โดเมนของแอททริบิวท์อายุของพนักงานมีขอบเขตระหว่าง 18-60 ปี เป็นต้น



ข้อดีของระบบฐานข้อมูลเชิงสัมพันธ์

1. ฐานข้อมูลเชิงสัมพันธ์เป็นกลุ่มข้อมูลของรีเลชั่นหรือตารางที่ข้อมูลถูกจัดเก็บเป็นแถวหรือคอลัมน์ซึ่งทำให้ผู้ใช้เห็นภาพของข้อมูลได้ง่าย
2. ผู้ใช้ไม่ต้องรู้ว่าข้อมูลถูกจัดเก็บอย่างไร รวมถึงวิธีการเรียกใช้ข้อมูล
3. ภาษาที่ใช้เป็นการเรียกใช้ข้อมูล เป็นลักษณะคล้ายภาษาอังกฤษ และไม่จำเป็นต้องเขียนเป็นลำดับขั้น
4. การเรียกใช้หรือเชื่อมโยงข้อมูลทำได้ง่าย โดยใช้โอเปอร์เรเตอร์ทางคณิตศาสตร์

คีย์ในฐานข้อมูล

   ด้วยปัญหาหลักของการไม่ใช้ฐานข้อมูล ดังได้กล่าวมาแล้วในบทที่ 1 ได้แก่ การซ้ำซ้อนของข้อมูล เพราะฉะนั้นการควบคุมไม่ให้มีข้อมูลซ้ำซ้อนจึงต้องมีเครื่องมือ เครื่องมือดังกล่าว คือ คีย์ คีย์ช่วยในการแบ่งแยกความแตกต่างของข้อมูลในแต่ละแถว และคีย์ยังใช้ในการเชื่อมโยงข้อมูลระหว่างตารางตั้งแต่ 2 ตารางขึ้นไปด้วย นอกจากนี้ยังเป็นเครื่องมือที่ช่วยในการกำหนดความสัมพันธ์ของเอ็นทิตี คีย์ที่รู้จักกันดี ได้แก่ คีย์หลัก คีย์นอก เป็นต้น ให้พิจารณาภาพต่อไปนี้



1.คีย์หลัก

   คีย์หลัก (primary key) คือ คีย์คู่แข่งที่ถูกเลือก เพื่อกำหนดให้ข้อมูลในตารางนั้นมีความเป็นเอกลักษณ์ แยกให้แถวแต่ละแถวมีข้อมูลไม่ซ้ำกัน คำว่าแถว ในหนังสือบางเล่มเรียกว่าทูเพิล หรือระเบียน โดยคุณสมบัติของคีย์หลักจะต้องไม่เป็นค่าว่าง ในแต่ละแอททริบิวต์อาจจะมีคีย์คู่แข่งที่ไม่ได้รับการเลือกให้เป็นคีย์หลัก คีย์นั้นจะเรียกว่าคีย์สำรอง (alternate key) ในการเลือกคีย์คู่แข่งเพื่อให้เป็นคีย์หลักอาจจะเลือกเอาแอททริบิวต์มากกว่าหนึ่งแอททริบิวต์ผสมกันได้เรียกว่า คีย์ผสม (compound key)

2. คีย์คู่แข่ง

   คีย์คู่แข่ง (candidate key) หมายถึง ซูเปอร์คีย์ที่มีขนาดเล็กที่สุด ที่ไม่มีแอททริบิวต์อื่นเป็นเซตย่อย มาร่วมกันเพื่อให้เกิดเป็นเอกลักษณ์ในตารางนั้น ๆ

3. คีย์นอก

   คีย์นอก (foreign key) หมายถึง คีย์หลักของตารางแม่ เมื่อนำมาใช้ในการเชื่อมโยงในอีกตารางหนึ่ง (ตารางลูก) เพื่อให้ตารางสองตารางเชื่อมโยงข้อมูลถึงกันจะเรียกว่า คีย์นอก

4.คีย์รวมหรือคีย์ผสม

   คีย์รวมหรือคีย์ผสม (Composite Key) คีย์ที่ประกอบด้วยกลุ่มของแอททริบิวต์ที่รวมกันเ็นคีย์หลัก เรียกคีย์ที่เกิดจากการรวมเลขที่ใบสั่งซื้อและรหัสสินค้าว่าคีย์รวมหรือคีย์ผสม


การออกแบบระบบฐานข้อมูล

1.เก็บรวบรวมรายละเอียดทั้งหมด

  เป็นขั้นตอนการเกผ้บรวบรวมข้อมูลและรายละเอียดต่างๆของงาน รวมทั้งความต้องการของผู้ใช้ ข้อมูลอาจได้มาจากการสำรวจความต้องการของผู้ใช้โดยวิธีการสัมภาษณ์ ดูเอกสาร แบบฟอร์มต่างๆ

2.กำหนดเอนทิตี้และความสัมพันธ์

  กำหนดเอนทิตี้และความสัมพันธ์ระหว่างเอนทิตี้ จากขั้นตอนการเก็บรวบรวมรายละเอียดทั้งหมด ข้อมูลที่ได้นำมากำหนดเอนทิตี้และความสัมพันธ์ระหว่างเอนทิตี้

3.ปรับเอนทิตี้และความสัมพันธ์ระหว่างเอนทิตี้เป็นรีเลชัน

  ปรับเอนทิตี้และความสัมพันธ์ระหว่างเอนทิตี้เป็นรีเลชัน เป็นขั้นตอนการปรับเอนทิตี้ไปเป็นรีเลชัน ในขั้นตอนนี้ถ้ามีความสัมพันธ์แบบกลุ่มต่อกลุ่มเกิดขึ้นให้ทำการปรับความสัมพันธ์แบบกลุ่มต่อกลุ่มให้เป็นความสัมพันธ์แบบหนึ่งต่อกลุ่ม


4.กำหนดแอททริบิวต์แต่ละรีเลชัน

  กำหนดแอททริบิวต์แต่ละรีเลชัน เป็นขั้นตอนการกำหนดและคุณลักษณะของข้อมูลให้กับแต่ละรีเลชัน 

5.กำหนดโครงสร้างของตารางและกำหนดคีย์

  นำรีเลชันและแอททริบิวต์มากำหนดโครงสร้างตาราง โดยแปลงแอททริบิวต์เป็นเขตข้อมูลพร้อมกำหนดชนิดและขนาดของข้อมูลในแต่ละเขต พร้อมทั้งเงื่อนไขและกฏเกณฑ์ที่มช้กำหนดคีย์ให้กับแต่ละรีเลชันเป็นการพิจารณาว่าแอททริบิวต์มีคุณสมบัติเหมาะที่จะนำมาเป็นคีย์หลัก

6.ปรับรีเลชันให้อยู่ในรูปแบบปกติ

  เพื่อให้ตารางที่สร้างขึ้นมีประสิทธิภาพในการทำงานมากที่สุดหากขั้นตอนการกำหนดโครงสร้างตารางมีความซ้ำว้อนอยู่หรือข้อมูลบางแอททริบิวต์ไม่เกี่ยวข้องโดยตรงกับเนื้อหาในตารางนั้น

ไม่มีความคิดเห็น:

แสดงความคิดเห็น