Skip to main content

دليل لفهم تبعيات قاعدة البيانات

Chapter 10 - Database Normalization - What Is Normalalization - Part1 (قد 2025)

Chapter 10 - Database Normalization - What Is Normalalization - Part1 (قد 2025)
Anonim

التبعية هي قيد ينطبق على أو يعرف العلاقة بين السمات. يحدث في قاعدة بيانات عندما تحدد المعلومات المخزنة في نفس الجدول قاعدة البيانات بشكل فريد المعلومات المخزنة في نفس الجدول. يمكنك أيضًا وصف ذلك كعلاقة حيث يكفي معرفة قيمة سمة واحدة (أو مجموعة من السمات) لإعلامك بقيمة سمة أخرى (أو مجموعة من السمات) في نفس الجدول.

غالبًا ما تربك تبعيات قاعدة البيانات الطلاب وخبراء قواعد البيانات على حد سواء. لحسن الحظ ، فهي ليست معقدة كما قد تبدو. وأفضل ما يمكن شرحه باستخدام بعض الأمثلة. هنا ، سنفحص أنواع التبعية الشائعة لقاعدة البيانات.

تبعيات قاعدة البيانات والتوابع الوظيفية

القول أن هناك تبعية بين السمات في الجدول هو نفس القول أن هناك تبعية وظيفية بين تلك السمات. إذا كان هناك تبعية في قاعدة بيانات ، فإن السمة "ب" تعتمد على السمة "أ" ، فيجب كتابتها على النحو التالي:

أ -> ب

على سبيل المثال ، في جدول يبين خصائص الموظف ، بما في ذلك رقم الضمان الاجتماعي (SSN) والاسم ، يمكن القول أن الاسم يعتمد على SSN (أو اسم SSN ->) لأنه يمكن تحديد اسم الموظف بشكل فريد من SSN. ومع ذلك ، فإن البيان العكسي (الاسم -> SSN) غير صحيح لأن أكثر من موظف واحد يمكن أن يكون له نفس الاسم ولكن دائما يكون SSNs مختلفة.

التبعيات وظيفية تافهة

تحدث التبعية الوظيفية البسيطة عند وصف تبعية وظيفية لسمة في مجموعة سمات تتضمن السمة الأصلية. على سبيل المثال ، {A، B} -> B عبارة عن تبعية وظيفية تافهة ، مثل {الاسم ، SSN} -> SSN. هذا النوع من التبعية الوظيفية يسمى تافهة لأنها يمكن أن تستمد من الفطرة السليمة. من الواضح أنه إذا كنت تعرف قيمة B بالفعل ، عندها يمكن تحديد قيمة B بشكل فريد من قبل تلك المعرفة.

التبعيات الوظيفية الكاملة

تحدث الإعالة الوظيفية الكاملة عندما تستوفي بالفعل متطلبات التبعية الوظيفية ولا يمكن تقليل مجموعة السمات الموجودة على الجانب الأيسر من بيان التبعية الوظيفية. على سبيل المثال ، {SSN ، العمر} -> الاسم هو تبعية وظيفية ، لكنه ليس تبعية وظيفية كاملة لأنه يمكنك إزالة العمر من الجانب الأيسر من العبارة دون التأثير على علاقة التبعية.

التبعيات متعدية

تحدث تبعيات متعدية عند وجود علاقة غير مباشرة تؤدي إلى تبعية وظيفية. على سبيل المثال ، A -> C هي تبعية متعدية عندما يكون صحيحًا فقط لأن كلا من A و> B و> C صحيحان.

التبعيات متعددة القيم

تحدث تبعيات متعددة القيم عند وجود صف واحد أو أكثر في جدول يتضمن وجود صف واحد أو أكثر في نفس الجدول. على سبيل المثال ، تخيل شركة سيارات تقوم بتصنيع العديد من موديلات السيارات ، ولكنها دائمًا تصنع ألوانًا حمراء وزرقاء من كل طراز. إذا كان لديك جدول يحتوي على اسم الطراز واللون وسنة كل سيارة تقوم الشركة بتصنيعها ، فهناك تبعية متعددة القيم في هذا الجدول. إذا كان هناك صف لاسم نموذج معين وسنة بالأزرق ، فيجب أن يكون هناك صف مماثل يتوافق مع الإصدار الأحمر من نفس السيارة.

أهمية التبعيات

من المهم فهم تبعيات قاعدة البيانات لأنها توفر اللبنات الأساسية المستخدمة في تطبيع قاعدة البيانات ، وهي عملية تنظيم البيانات بفعالية في قاعدة بيانات. فمثلا:

  • لكي يكون الجدول في الشكل العادي الثاني (2NF) ، يجب ألا يكون هناك أي سمة لسمة nonprime في الجدول الذي يعتمد وظيفيًا على مجموعة فرعية من مفتاح مرشح.
  • لكي يكون الجدول في الشكل الثالث العادي (3NF) ، يجب أن يكون لكل سمة nonprime اعتماد وظيفي غير اختياري على كل مفتاح مرشح.
  • يجب أن يكون كل تبعية وظيفية (بخلاف التبعيات التافهة) على أحد المفاتيح الفائقة لكي يكون الجدول في نموذج Boyce-Codd Normal (BCNF).
  • لكي يكون الجدول في الشكل الرابع العادي (4NF) ، يجب ألا يكون له تبعيات متعددة القيم.