في سياق قواعد البيانات العلائقية، يعد المفتاح الخارجي عنصرًا حاسمًا ينشئ ويفرض العلاقات بين الكيانات ويضمن التكامل المرجعي عبر جداول قاعدة البيانات. المفتاح الخارجي هو عمود أو مجموعة من الأعمدة في جدول واحد تشير إلى عمود (أعمدة) المفتاح الأساسي لجدول آخر. يُشار إلى الجدول الذي يحتوي على المفتاح الخارجي بالجدول المرجعي أو الجدول الفرعي، في حين يُشار إلى الجدول الذي يحتوي على المفتاح الأساسي غالبًا بالجدول المرجعي أو الجدول الأصلي.
AppMaster ، منصة قوية no-code ، تستخدم المفاتيح الخارجية كجزء من نهجها الشامل لتصميم مخطط قاعدة البيانات وإدارته، مما يسمح للمستخدمين بإنشاء هياكل قواعد بيانات علائقية فعالة وقابلة للتطوير دون كتابة أي تعليمات برمجية. من خلال تسخير المفاتيح الخارجية، تعمل AppMaster على تمكين مستخدميها من تشكيل علاقات وتبعيات معقدة بين كيانات بيانات تطبيقاتهم، مما يضمن تمثيلًا دقيقًا ومتسقًا لمجال الأعمال الأساسي.
الغرض الأساسي من المفتاح الخارجي هو الحفاظ على التكامل المرجعي في قاعدة البيانات العلائقية. التكامل المرجعي عبارة عن مجموعة من قواعد وقيود اتساق البيانات التي تضمن بقاء البيانات في الجداول المرتبطة دقيقة ومتسقة. تنص هذه القواعد على أن أي قيمة في عمود (أعمدة) المفتاح الخارجي للجدول الفرعي يجب أن تتوافق مع قيمة موجودة في عمود (أعمدة) المفتاح الأساسي للجدول الأصلي. بمعنى آخر، تعمل قيود المفاتيح الخارجية على الحماية من إنشاء سجلات معزولة في الجداول التابعة.
خذ بعين الاعتبار مثالًا بسيطًا لقاعدة بيانات تحتوي على جدولين، العملاء والطلبات، حيث يكون لكل طلب عميل قام بتقديمه. في هذا السيناريو، سيتضمن جدول العملاء عمود مفتاح أساسي، مثل "Customer_ID"، لتحديد كل عميل بشكل فريد. من ناحية أخرى، سيحتوي جدول الطلبات على عمود مفتاح خارجي، مثل "Customer_ID"، لربط كل طلب بالعميل المقابل له. يفرض قيد المفتاح الخارجي هذا أن أي طلب في جدول الطلبات يجب أن يكون له عميل صالح مرتبط به، موجود في جدول العملاء. وبالتالي، سيكون من المستحيل إنشاء طلب مع عميل غير موجود، مما يمنع حدوث عدم تناسق محتمل في البيانات.
بالإضافة إلى الحفاظ على التكامل المرجعي، يمكن أيضًا استخدام المفاتيح الخارجية لتحديد العلاقات بين الكيانات. ويمكن تصنيف هذه العلاقات إلى ثلاثة أنواع: واحد إلى واحد، وواحد إلى متعدد، ومن متعدد إلى متعدد. تحدد علاقة رأس برأس ارتباطًا صارمًا بين كيانين، حيث يرتبط كل كيان في الجدول الأصلي بكيان واحد على الأكثر في الجدول الفرعي. تسمح علاقة رأس بأطراف، كما هو موضح في مثال العملاء والطلبات، بربط سجلات متعددة في الجدول الفرعي بسجل واحد في الجدول الأصلي. تسمح علاقات متعدد إلى متعدد، التي تتطلب جداول وسيطة أو جداول توصيل، بربط سجلات متعددة من كل جدول مشارك بسجلات متعددة في الجدول الآخر.
يمكن لقيود المفاتيح الخارجية أيضًا فرض إجراءات متتالية، والتي تملي كيفية تعامل قاعدة البيانات مع التحديثات أو عمليات الحذف للسجلات ذات الصلة. الإجراءات المتتالية الأربعة الأساسية هي CASCADE وSET NULL وSET DEFAULT وNO ACTION أو RESTRICT. سيقوم خيار CASCADE بنشر التغييرات أو عمليات الحذف التي تم إجراؤها على قيمة المفتاح الأساسي في الجدول الأصلي إلى كافة قيم المفاتيح الخارجية ذات الصلة في الجدول الفرعي. سيقوم SET NULL بتعيين قيمة المفتاح الخارجي في الجدول الفرعي إلى NULL عندما يتم تحديث أو حذف قيمة المفتاح الأساسي المقابلة في الجدول الأصلي. يعمل SET DEFAULT بشكل مشابه ولكنه يقوم بتعيين قيمة المفتاح الخارجي في الجدول التابع إلى قيمته الافتراضية بدلاً من NULL. وأخيرًا، لا يوجد إجراء أو تقييد يمنع أي تغييرات على قيمة المفتاح الأساسي التي قد تؤدي إلى عزل السجلات ذات الصلة في الجدول الفرعي.
باختصار، يعد المفتاح الخارجي مفهومًا حيويًا في إنشاء وإدارة قواعد البيانات العلائقية، مما يضمن تمثيل البيانات بشكل متسق ودقيق ومترابط. من خلال منهجه البصري البديهي لتصميم مخطط قاعدة البيانات، يحتضن AppMaster قوة ومرونة المفاتيح الخارجية، مما يمكّن مستخدميه من إنشاء هياكل قاعدة بيانات قابلة للتطوير وفعالة وموثوقة دون كتابة سطر واحد من التعليمات البرمجية. لا يعمل AppMaster على تبسيط عملية دمج المفاتيح الخارجية في تصميمات قواعد البيانات فحسب، بل يساهم أيضًا في تطوير البرامج بشكل أسرع وأكثر فعالية من حيث التكلفة.