جدول المحتويات:
تعريف - ماذا يعني النموذج العادي الثالث (3NF)؟
النموذج العادي الثالث (3NF) هو الخطوة الثالثة في تطبيع قاعدة البيانات ويقوم على النماذج العادية الأولى والثانية ، 1NF و 2NF.
تنص 3NF على أنه يجب إزالة كل مرجع العمود في البيانات المرجعية التي لا تعتمد على المفتاح الأساسي. هناك طريقة أخرى لوضع ذلك وهي أنه يجب استخدام أعمدة المفاتيح الخارجية فقط للإشارة إلى جدول آخر ، ويجب ألا توجد أعمدة أخرى من الجدول الأصل في الجدول المشار إليه.
تيكوبيديا تشرح النموذج الثالث العادي (3NF)
اطلع على قاعدة بيانات أحد البنوك ، والتي تحتوي على جدولين: CUSTOMER_MASTER لتخزين تفاصيل العميل ، و ACCOUNT_MASTER لتخزين تفاصيل حول الحسابات المصرفية ، بما في ذلك أي عميل لديه حساب. في هذه الحالة ، يجب أن تكون هناك طريقة لربط الجدولين لربط الحساب بالعميل الذي يملكه. طريقة القيام بذلك هي عن طريق مفتاح خارجي. هذا عمود في جدول ACCOUNT_MASTER يشير إلى عمود مطابق أو يشير إليه (يسمى المفتاح الأساسي) في الجدول الأصل CUSTOMER_MASTER. دعنا نسمي هذا العمود CustID.
افترض أن العميل Andrew Smith ينشئ حسابًا في جدول CUSTOMER_MASTER مع CustID 20454. يحمل السيد Smith حساب ادخار برقم S-200802-005 ، حيث يتم تخزين تفاصيله في جدول ACCOUNT_MASTER. هذا يعني أن جدول ACCOUNT_MASTER سيحتوي على عمود يسمى CustID ، وهو ليس قطعة بيانات أصلية. بدلاً من ذلك ، يحتوي أيضًا على القيمة 20454 ، والتي تشير ببساطة إلى نفس CustID في جدول CUSTOMER_MASTER.
الآن ، تنص 3NF على أنه في جدول ACCOUNT_MASTER ، يجب أن تكون المعلومات الوحيدة التي نحتفظ بها حول العميل هي CustID (20454) كمفتاح خارجي ، وتشير إلى العميل الذي يمتلك نفس CustID في جدول CUSTOMER_MASTER (أندرو سميث) ). لا ينبغي تخزين أي بيانات أخرى حول عملائنا (مثل الاسم وتاريخ الميلاد والجنس وما إلى ذلك) في جدول ACCOUNT_MASTER ، أو أي جدول آخر بالفعل ، لأن جميع هذه البيانات الخاصة به مخزنة بالفعل في CUSTOMER_MASTER. من خلال القيام بذلك ، تكون بيانات العميل الوحيدة المخزنة خارج جدول CUSTOMER_MASTER هي CustID. هذا يدفع أرباحًا جيدة عن طريق التأكد من عدم وجود ازدواجية في البيانات ، مما يجعل الاستعلامات تعمل بكفاءة أكبر وتقلل من مساحة التخزين المطلوبة.