ما هي السلامة المرجعية (referential integrity)؟

السلامة المرجعية قاعدة قاعدة البيانات التي تقضي بأن يشير المفتاح الأجنبي دائماً إلى صفّ موجود في الجدول المرجعي، أو أن يكون فارغاً (null)، ما يمنع السجلات اليتيمة. وهي تُبقي العلاقات صالحة، فمثلاً لا يمكن لأي طلب أن يشير إلى عميل غير موجود.

السلامة المرجعية هي ما يُبقي البيانات المرتبطة متسقة. تُفرَض عبر قيود المفتاح الأجنبي، وتضمن أن كل إشارة تُحلّ إلى سجلّ حقيقي: احذف عميلاً وستَحُظر قاعدة البيانات ذلك، أو تُسلسِل التغيير، بدلاً من ترك طلبات يتيمة تشير إلى العدم.

لماذا يهمّ ذلك:

  • عمليات دمج موثوقة الروابط بين الجداول تُحلّ فعلاً.
  • بلا أيتام صفوف الأبناء لها دوماً أب صالح.
  • تحليل أنظف الأعداد وعمليات الدمج لا تختلّ بمراجع معلّقة.

في الواقع، لا تُفرَض السلامة دائماً، خاصةً عبر أنظمة منفصلة لم تُصمَّم قط لتشير بعضها إلى بعض، فتشيع السجلات اليتيمة وغير المتطابقة.

يساعد iDBQuery في العالمين. فحيث تُفرَض السلامة المرجعية، يستعمل المفاتيح الأجنبية المُصرَّح بها لاستنتاج عمليات الدمج الصحيحة تلقائياً. وحيث لا تُفرَض، يستطيع اتحاده وطبقته الدلالية ربط السجلات عبر المصادر، وتستطيع استعمال أسئلة بلغة طبيعية *لإيجاد* مشكلات السلامة، طلبات بلا عميل مطابق، سجلات تشير إلى كيانات مفقودة، بوصفها فحص جودة بيانات. ولأن iDBQuery يوثّق كل رقم عائداً إلى صفوف المصدر، تظهر العلاقات المكسورة بوضوح بدلاً من أن تشوّه إجمالياً في صمت. فهو يستثمر السلامة الجيّدة ويساعدك على كشف مواضع غيابها.

Updated 2026-06-22