هل تحتوي الجدول بالتفاصيل على عمود الهوية في علاقة ماجستير التفاصيل؟

StackOverflow https://stackoverflow.com/questions/2014164

  •  19-09-2019
  •  | 
  •  

سؤال

في علاقات التفاصيل الرئيسية، هل تحتوي جداول التفاصيل على أعمدة الهوية؟

أو، يجب ذلك؟

في قاعدة بيانات Northwind، لا يحتوي OrderDetail عمود معرف.

هل كانت مفيدة؟

المحلول

أي جدول بيانات لديك يحتوي على شيء تريد أن تكون قادرا على استرداده يجب أن يحتوي دائما على مفتاح أساسي - وهذا هو الوظيفة الرئيسية: تحديد فريد صف واحد.

فقط لأن التفاصيل تنتمي إلى صف رئيسي لا يعني أنها ليست صفوف بيانات كاملة لأنها تحتاج إلى تحديدها بطريقة ما.

نعم - أود أن أوصي بأي جدول تفاصيل للحصول على شكل من أشكال مفتاح أساسي ("معرف"). سواء كان ذلك متصلا بطريقة أو بأخرى بالمعرف الرئيسي أم لا شيء قد تقرر على أساس كل حالة على حدة - ولكن كان هناك طريقة لتحديد كل صف التفاصيل بشكل مستقل بطريقة أو بأخرى.

إذا كان لديك جدول رابط لعلاقة M: N، عادة ما يكون لديك فقط الأعمدة الرئيسية الأجنبية (للجدول 1 و 2) هناك. هذا عادة ما يكون جيدا بما فيه الكفاية، لأن مزيج من هذين FK فريد من نوعه.

السبب الوحيد لإضافة معرف منفصل لهذا الجدول سيكون إذا كنت بحاجة إلى إضافة قطع إضافية من المعلومات التي تصف العلاقة في حد ذاتها. ولكن حتى ذلك الحين، طالما أن مجموعة (KEY1، KEY2) فريدة من نوعها، فهذا هو عادة جيدة بما فيه الكفاية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top