Referential integrity คือคุณลักษณะฐานข้อมูลในระบบการจัดการฐานข้อมูลเชิงสัมพันธ์ ช่วยให้มั่นใจว่าความสัมพันธ์ระหว่างตารางในฐานข้อมูลยังคงถูกต้องโดยใช้ข้อ จำกัด เพื่อป้องกันไม่ให้ผู้ใช้หรือแอพพลิเคชันป้อนข้อมูลที่ไม่ถูกต้องหรือชี้ไปยังข้อมูลที่ไม่มีอยู่
ฐานข้อมูล ใช้ตารางเพื่อจัดระเบียบข้อมูลที่มีอยู่ พวกเขามีลักษณะคล้ายกับสเปรดชีตเช่น Excel แต่มีความสามารถมากขึ้นสำหรับผู้ใช้ขั้นสูง ฐานข้อมูลทำงานโดยใช้คีย์หลักและคีย์ต่างประเทศซึ่งรักษาความสัมพันธ์ระหว่างตาราง
คีย์หลัก
คีย์หลัก ของตารางฐานข้อมูลคือตัวระบุเฉพาะที่กำหนดให้กับแต่ละระเบียน แต่ละตารางจะมีคอลัมน์อย่างน้อยหนึ่งคอลัมน์ที่กำหนดให้เป็นคีย์หลัก หมายเลขประกันสังคมอาจเป็นคีย์หลักสำหรับรายชื่อฐานข้อมูลของพนักงานเนื่องจากหมายเลขประกันสังคมแต่ละฉบับมีความเป็นเอกลักษณ์
อย่างไรก็ตามเนื่องจากความกังวลเรื่องความเป็นส่วนตัวหมายเลขรหัส บริษัท ที่ได้รับมอบหมายเป็นตัวเลือกที่ดีกว่าในการทำหน้าที่เป็นคีย์หลักสำหรับพนักงาน ซอฟต์แวร์ฐานข้อมูลบางตัวเช่น Microsoft Access จะกำหนดคีย์หลักโดยอัตโนมัติ แต่คีย์แบบสุ่มไม่มีความหมายที่แท้จริง ควรใช้คีย์ที่มีความหมายกับเร็กคอร์ด วิธีที่ง่ายที่สุดในการบังคับใช้ความสมบูรณ์แบบอ้างอิงไม่ได้เป็นการอนุญาตให้มีการเปลี่ยนแปลงคีย์หลัก
คีย์ต่างประเทศ
คีย์ต่างประเทศ เป็นตัวระบุในตารางที่ตรงกับคีย์หลักของตารางอื่น คีย์ต่างประเทศสร้างความสัมพันธ์กับตารางอื่นและ referential integrity หมายถึงความสัมพันธ์ระหว่างตารางเหล่านี้
เมื่อตารางหนึ่งมีคีย์ต่างประเทศไปยังตารางอื่นแนวคิดเกี่ยวกับความสมบูรณ์แบบอ้างอิงจะระบุว่าคุณไม่สามารถเพิ่มระเบียนลงในตารางที่มีคีย์ต่างประเทศนอกจากจะมีระเบียนที่ตรงกันในตารางที่เชื่อมโยง นอกจากนี้ยังมีเทคนิคที่เรียกว่าการอัปเดตแบบเรียงซ้อนและการลบข้อมูลแบบเรียงซ้อนซึ่งทำให้มั่นใจได้ว่าการเปลี่ยนแปลงที่เกิดขึ้นกับตารางที่เชื่อมโยงจะแสดงในตารางหลัก
ตัวอย่างกฎความสอดคล้อง
พิจารณาสถานการณ์ที่คุณมีสองตาราง: พนักงานและผู้จัดการ ตารางพนักงานมีแอตทริบิวต์คีย์ต่างประเทศที่ชื่อว่า ManagedBy ซึ่งชี้ไปยังระเบียนสำหรับผู้จัดการของพนักงานแต่ละคนในตารางผู้จัดการ ความสมบูรณ์แบบอ้างอิงจะบังคับใช้กฎสามข้อต่อไปนี้:
- คุณไม่สามารถเพิ่มระเบียนลงในตารางพนักงานยกเว้นแอตทริบิวต์ ManagedBy ชี้ไปยังระเบียนที่ถูกต้องในตารางตัวจัดการ ความถูกต้องของข้อมูลอ้างอิงช่วยป้องกันการแทรกรายละเอียดที่ไม่ถูกต้องลงในตาราง การดำเนินการใด ๆ ที่ไม่สอดคล้องกับกฎความสมบูรณ์แบบอ้างอิงล้มเหลว
- ถ้าคีย์หลักสำหรับเรกคอร์ดในตารางตัวจัดการเปลี่ยนแปลงระเบียนที่สอดคล้องกันทั้งหมดในตารางพนักงานถูกปรับเปลี่ยนโดยใช้การปรับปรุง cascading
- ถ้าระเบียนในตารางผู้จัดการถูกลบระเบียนที่สอดคล้องกันทั้งหมดในตารางพนักงานจะถูกลบออกโดยใช้การลบข้อมูลแบบเรียงซ้อน
ข้อดีของข้อจำกัดความสอดคล้อง
การใช้ระบบ การจัดการฐานข้อมูล เชิงสัมพันธ์กับความสมบูรณ์แบบอ้างอิงมีข้อดีหลายอย่าง:
- ป้องกันการป้อนข้อมูลที่ซ้ำกัน
- ป้องกันไม่ให้หนึ่งตารางชี้ไปที่ฟิลด์ที่ไม่มีอยู่ในตารางอื่น
- รับประกันความสอดคล้องระหว่างตาราง "พันธมิตร"
- ป้องกันการลบเรกคอร์ดที่มีค่าที่คีย์เวิร์ดอ้างอิงจากต่างประเทศในตารางอื่น
- ป้องกันการเพิ่มระเบียนลงในตารางที่มีคีย์ต่างประเทศนอกจากจะมีคีย์หลักในตารางที่เชื่อมโยงอยู่