แบบจำลองข้อมูลเชิงสัมพันธ์ในระบบจัดการฐานข้อมูล (DBMS): Concepts & ตัวอย่าง
⚡ สรุปอย่างชาญฉลาด
แบบจำลองเชิงสัมพันธ์ (Relational Model) แสดงฐานข้อมูลในรูปของชุดความสัมพันธ์ โดยแต่ละความสัมพันธ์เป็นตารางที่มีแถวและคอลัมน์ แบบจำลองนี้กำหนดแนวคิดหลัก ข้อจำกัดด้านความสมบูรณ์ และการดำเนินการอัปเดตที่ทำให้ข้อมูลเชิงสัมพันธ์มีความสอดคล้องและง่ายต่อการสืบค้น

โมเดลเชิงสัมพันธ์คืออะไร?
โมเดลเชิงสัมพันธ์ (RM) แสดงถึงฐานข้อมูลที่เป็นกลุ่มของความสัมพันธ์ ความสัมพันธ์เป็นเพียงตารางค่าเท่านั้น ทุกแถวในตารางแสดงถึงชุดของค่าข้อมูลที่เกี่ยวข้อง แถวเหล่านี้ในตารางแสดงถึงเอนทิตีหรือความสัมพันธ์ในโลกแห่งความเป็นจริง
ชื่อตารางและชื่อคอลัมน์ช่วยในการตีความความหมายของค่าในแต่ละแถว ข้อมูลถูกแสดงเป็นชุดของความสัมพันธ์ ในแบบจำลองเชิงสัมพันธ์ ข้อมูลจะถูกจัดเก็บในรูปแบบตาราง อย่างไรก็ตาม การจัดเก็บข้อมูลทางกายภาพนั้นเป็นอิสระจากวิธีการจัดระเบียบข้อมูลเชิงตรรกะ
แบบจำลองนี้ได้รับการเสนอโดย EF Codd ในปี 1970 และยังคงเป็นพื้นฐานของฐานข้อมูลหลักเกือบทุกระบบที่ใช้กันอยู่ในปัจจุบัน ระบบจัดการฐานข้อมูลเชิงสัมพันธ์ที่เป็นที่นิยมบางระบบ ได้แก่:
- DB2 และเซิร์ฟเวอร์แบบไดนามิก Informix – IBM
- Oracle และ RDB – Oracle
- เซิร์ฟเวอร์ SQL และการเข้าถึง – Microsoft
แบบจำลองเชิงสัมพันธ์ Concepts ในดีบีเอ็มเอส
- แอตทริบิวต์: แต่ละคอลัมน์ในตาราง คุณลักษณะคือคุณสมบัติที่กำหนดความสัมพันธ์ เช่น หมายเลขประจำตัวนักศึกษา ชื่อ เป็นต้น
- โต๊ะ: ในแบบจำลองเชิงสัมพันธ์ ความสัมพันธ์จะถูกบันทึกในรูปแบบตาราง โดยจะถูกจัดเก็บไว้พร้อมกับเอนทิตี ตารางมีคุณสมบัติสองอย่าง คือ แถวและคอลัมน์ แถวแทนระเบียน และคอลัมน์แทนคุณลักษณะ
- ทูเปิล: มันก็คือแถวหนึ่งในตาราง ซึ่งประกอบด้วยข้อมูลเพียงรายการเดียว
- สคีมาความสัมพันธ์: สคีมาความสัมพันธ์แสดงถึงชื่อของความสัมพันธ์พร้อมกับคุณลักษณะของมัน
- ปริญญา: จำนวนแอตทริบิวต์ทั้งหมดในความสัมพันธ์เรียกว่าระดับของความสัมพันธ์นั้น
- จำนวนสมาชิก: จำนวนแถวทั้งหมดที่มีอยู่ในตาราง
- คอลัมน์: คอลัมน์แสดงถึงชุดของค่าสำหรับแอตทริบิวต์เฉพาะ
- ตัวอย่างความสัมพันธ์: อินสแตนซ์ของความสัมพันธ์คือเซตจำกัดของทูเปิลในระบบ RDBMS อินสแตนซ์ของความสัมพันธ์จะไม่มีทูเปิลซ้ำกัน
- รหัสความสัมพันธ์: แต่ละแถวจะมีแอตทริบิวต์หนึ่ง สอง หรือหลายแอตทริบิวต์ ซึ่งเรียกว่าคีย์ความสัมพันธ์
- โดเมนแอตทริบิวต์: คุณลักษณะทุกอย่างมีค่าและขอบเขตที่กำหนดไว้ล่วงหน้า ซึ่งเรียกว่าโดเมนของคุณลักษณะ
เมื่อมีคำศัพท์พร้อมแล้ว สิ่งต่อไปที่ต้องคำนึงถึงคือการรักษา...ping ข้อมูลในความสัมพันธ์เหล่านั้นมีความถูกต้อง ซึ่งเป็นหน้าที่ของข้อจำกัดด้านความสมบูรณ์ของข้อมูล
เชิงสัมพันธ์ Integrity ข้อ จำกัด
ข้อจำกัดด้านความสมบูรณ์ของความสัมพันธ์ในระบบจัดการฐานข้อมูล (DBMS) หมายถึงเงื่อนไขที่ต้องมีอยู่เพื่อให้ความสัมพันธ์นั้นถูกต้อง ข้อจำกัดด้านความสัมพันธ์เหล่านี้ได้มาจากกฎในโลกจำลองขนาดเล็กที่ฐานข้อมูลเป็นตัวแทน
ข้อจำกัดด้านความสมบูรณ์ของข้อมูลมีหลายประเภท ข้อจำกัดในระบบจัดการฐานข้อมูลเชิงสัมพันธ์ส่วนใหญ่แบ่งออกเป็นสามประเภทหลัก ได้แก่:
- ข้อจำกัดของโดเมน
- ข้อจำกัดที่สำคัญ
- ข้อมูลอ้างอิง Integrity ข้อ จำกัด
ข้อจำกัดของโดเมน
ข้อจำกัดของโดเมนอาจถูกละเมิดได้หากค่าของแอตทริบิวต์ไม่ปรากฏในโดเมนที่เกี่ยวข้อง หรือหากค่าดังกล่าวไม่ใช่ประเภทข้อมูลที่เหมาะสม
ข้อจำกัดของโดเมนระบุว่าภายในแต่ละทูเปิล ค่าของแต่ละแอตทริบิวต์จะต้องเป็นค่าอะตอมิกและมาจากโดเมนที่ถูกต้อง โดเมนจะถูกระบุเป็นชนิดข้อมูล ซึ่งรวมถึงชนิดข้อมูลมาตรฐาน เช่น จำนวนเต็ม จำนวนจริง อักขระ บูลีน และสตริงที่มีความยาวแปรผันได้
ตัวอย่าง:
CREATE DOMAIN CustomerName CHECK (value NOT NULL)
ตัวอย่างที่แสดงนี้สาธิตวิธีการสร้างข้อจำกัดโดเมนเพื่อให้ CustomerName ไม่เป็นค่าว่าง (NULL)
ข้อจำกัดที่สำคัญ
คุณลักษณะที่สามารถระบุทูเปิลในความสัมพันธ์ได้โดยไม่ซ้ำกันเรียกว่าคีย์ของตาราง ค่าของแอตทริบิวต์สำหรับสิ่งอันดับที่แตกต่างกันในความสัมพันธ์จะต้องไม่ซ้ำกัน
ตัวอย่าง:
ในตารางที่กำหนด CustomerID เป็นแอตทริบิวต์หลักของตาราง Customer โดยส่วนใหญ่แล้วจะมีคีย์เดียวสำหรับลูกค้าหนึ่งราย เช่น CustomerID = 1 หมายถึง CustomerName เท่านั้นGoogleคู่มือฉบับนี้ได้อธิบายรายละเอียดเกี่ยวกับประเภทหลักต่างๆ อย่างครบถ้วนแล้ว คีย์ DBMS.
| รหัสลูกค้า | ชื่อลูกค้า | สถานะ |
|---|---|---|
| 1 | ใช้งาน | |
| 2 | Amazon | ใช้งาน |
| 3 | แอปเปิ้ล | เฉื่อยชา |
ข้อมูลอ้างอิง Integrity ข้อ จำกัด
ข้อจำกัดด้านความสมบูรณ์ของข้อมูลอ้างอิงในระบบจัดการฐานข้อมูล (DBMS) นั้นอิงตามแนวคิดของคีย์ต่างประเทศ คีย์ต่างประเทศเป็นคุณลักษณะสำคัญของความสัมพันธ์หนึ่งๆ ที่ควรถูกอ้างอิงในความสัมพันธ์อื่นๆ ข้อจำกัดด้านความสมบูรณ์ของข้อมูลอ้างอิงเกิดขึ้นเมื่อความสัมพันธ์หนึ่งอ้างอิงถึงคุณลักษณะคีย์ของความสัมพันธ์อื่นหรือความสัมพันธ์เดียวกัน โดยที่องค์ประกอบคีย์นั้นจะต้องมีอยู่ในตารางที่ถูกอ้างอิง
ตัวอย่าง:
ในตัวอย่างข้างต้น เรามีสองความสัมพันธ์ คือ ลูกค้า และ Billไอเอ็นจี
ทูเปิลสำหรับ CustomerID = 1 ถูกอ้างอิงสองครั้งในความสัมพันธ์ Billing. ดังนั้นเรารู้ว่า CustomerName “Google"มียอดเรียกเก็บเงิน 300 ดอลลาร์"
Operaความสัมพันธ์ในแบบจำลองเชิงสัมพันธ์
การดำเนินการอัปเดตพื้นฐานสี่อย่างจะดำเนินการกับแบบจำลองฐานข้อมูลเชิงสัมพันธ์ ได้แก่ การแทรก การอัปเดต การลบ และการเลือก
- คำสั่ง `insert` ใช้สำหรับแทรกข้อมูลลงในความสัมพันธ์
- Delete ใช้ในการลบสิ่งอันดับออกจากตาราง
- Modify ช่วยให้คุณสามารถเปลี่ยนค่าของคุณลักษณะบางอย่างใน tuple ที่มีอยู่ได้
- Select ช่วยให้คุณสามารถเลือกช่วงข้อมูลที่ต้องการได้
ทุกครั้งที่มีการดำเนินการใดๆ เหล่านี้ จะต้องไม่ละเมิดข้อจำกัดด้านความสมบูรณ์ที่ระบุไว้ในโครงสร้างฐานข้อมูลเชิงสัมพันธ์เด็ดขาด
สิ่งที่ใส่เข้าไป Operaการ
การดำเนินการแทรกจะส่งค่าของแอตทริบิวต์สำหรับทูเปิลใหม่ที่จะถูกแทรกเข้าไปในความสัมพันธ์
บันทึก Operaการ
คุณจะเห็นได้ว่าในตารางความสัมพันธ์ด้านล่าง ชื่อลูกค้า 'Apple' ได้รับการอัปเดตจาก ไม่ใช้งาน เป็น ใช้งาน แล้ว
ลบ Operaการ
ในการระบุการลบ เงื่อนไขในคุณลักษณะของความสัมพันธ์จะเลือกทูเพิลที่จะถูกลบ
ในตัวอย่างข้างต้น ชื่อลูกค้า “Apple” ถูกลบออกจากตารางแล้ว
การดำเนินการลบอาจละเมิดความสมบูรณ์ของข้อมูลอ้างอิง หากทูเปิลที่ถูกลบนั้นถูกอ้างอิงโดยคีย์ต่างประเทศจากทูเปิลอื่นในโครงสร้างข้อมูลเดียวกัน ฐานข้อมูล.
เลือก Operaการ
ในตัวอย่างข้างต้น CustomerName “Amazon” ถูกเลือก
แบบจำลองเชิงสัมพันธ์ เทียบกับ แบบจำลองเชิงลำดับชั้น และแบบจำลองเครือข่าย
แบบจำลองเชิงสัมพันธ์เข้ามาแทนที่แนวทางเดิมสองแบบ และความแตกต่างนี้อธิบายได้ว่าทำไมมันจึงกลายเป็นแบบจำลองที่โดดเด่น ตารางด้านล่างแสดงแบบจำลองทั้งสามแบบเคียงข้างกัน
| แง่มุม | แบบจำลองเชิงสัมพันธ์ | แบบจำลองลำดับชั้น | โมเดลเครือข่าย |
|---|---|---|---|
| โครงสร้าง | ตาราง (ความสัมพันธ์) | ต้นไม้ จากพ่อแม่สู่ลูก | กราฟแบบหลายต่อหลาย |
| การเข้าถึงข้อมูล | เชิงประกาศ โดยค่า | การนำทางตามเส้นทาง | การนำทางด้วยตัวชี้ |
| ความสัมพันธ์ | คีย์ต่างประเทศ | ความสัมพันธ์ระหว่างพ่อแม่และลูก | เซตและตัวชี้ |
| ภาษาแบบสอบถาม | SQL | รหัสขั้นตอน | รหัสขั้นตอน |
| ความยืดหยุ่น | จุดสูง | ต่ำ | กลาง |
เนื่องจากแบบจำลองเชิงสัมพันธ์จัดการข้อมูลโดยใช้ค่าแทนการใช้ลิงก์ทางกายภาพ ภาษาโปรแกรมระดับสูงอย่างเช่น SQL สามารถแสดงคำถามได้โดยไม่ต้องรู้ว่าข้อมูลถูกจัดเก็บอย่างไร
แนวทางปฏิบัติที่ดีที่สุดสำหรับการสร้างแบบจำลองเชิงสัมพันธ์
- ข้อมูลจำเป็นต้องถูกนำเสนอในรูปแบบของชุดความสัมพันธ์
- ความสัมพันธ์แต่ละอย่างควรแสดงให้เห็นอย่างชัดเจนในตาราง
- แต่ละแถวควรมีข้อมูลเกี่ยวกับอินสแตนซ์ของเอนทิตี
- คอลัมน์ต้องมีข้อมูลเกี่ยวกับคุณลักษณะของเอนทิตี
- ช่องในตารางควรเก็บค่าเพียงค่าเดียว
- แต่ละคอลัมน์ควรได้รับชื่อที่ไม่ซ้ำกัน
- ไม่มีแถวใดเหมือนกันทุกประการ
- ค่าของแอตทริบิวต์ควรมาจากโดเมนเดียวกัน
ข้อดีของแบบจำลองฐานข้อมูลเชิงสัมพันธ์
- เรียบง่าย: แบบจำลองข้อมูลเชิงสัมพันธ์ในระบบจัดการฐานข้อมูล (DBMS) นั้นเรียบง่ายกว่าแบบจำลองเชิงลำดับชั้นและแบบเครือข่าย
- ความเป็นอิสระเชิงโครงสร้าง: ฐานข้อมูลเชิงสัมพันธ์ให้ความสำคัญเฉพาะกับข้อมูลเท่านั้น ไม่ให้ความสำคัญกับโครงสร้าง ซึ่งสามารถปรับปรุงประสิทธิภาพของแบบจำลองได้
- ใช้งานง่าย: แบบจำลองเชิงสัมพันธ์นั้นใช้งานง่าย เนื่องจากตารางที่ประกอบด้วยแถวและคอลัมน์นั้นเป็นธรรมชาติและเข้าใจง่าย
- ความสามารถในการสืบค้นข้อมูล: ทำให้ภาษาการสอบถามระดับสูงอย่าง SQL สามารถหลีกเลี่ยงการค้นหาข้อมูลในฐานข้อมูลที่ซับซ้อนได้
- ความเป็นอิสระของข้อมูล: โครงสร้างของฐานข้อมูลเชิงสัมพันธ์สามารถเปลี่ยนแปลงได้โดยไม่ต้องเปลี่ยนแปลงแอปพลิเคชันใดๆ
- ขยายขีดความสามารถ: ในส่วนของจำนวนระเบียนหรือแถว และจำนวนฟิลด์นั้น ฐานข้อมูลสามารถขยายให้ใหญ่ขึ้นเพื่อเพิ่มประสิทธิภาพในการใช้งานได้
ข้อเสียของแบบจำลองเชิงสัมพันธ์
- ฐานข้อมูลเชิงสัมพันธ์ส่วนใหญ่ไม่มีข้อจำกัดเกี่ยวกับความยาวของฟิลด์ ซึ่งไม่สามารถเกินได้
- ฐานข้อมูลเชิงสัมพันธ์อาจมีความซับซ้อนมากขึ้นเมื่อปริมาณข้อมูลเพิ่มขึ้นและความสัมพันธ์ระหว่างข้อมูลแต่ละส่วนมีความซับซ้อนมากขึ้น
- ระบบฐานข้อมูลเชิงสัมพันธ์ที่ซับซ้อนอาจนำไปสู่ฐานข้อมูลที่แยกส่วน ซึ่งไม่สามารถแบ่งปันข้อมูลจากระบบหนึ่งไปยังอีกระบบหนึ่งได้






