العودة إلى الدورة

نمذجة العلاقات: واحد لمتعدد (1:N)

أساسيات قواعد البيانات: من الصفر إلى الاحتراف

الدرس 10: نمذجة العلاقات: واحد لمتعدد (1:N)

هذا هو النوع الأكثر شيوعًا من العلاقات في قواعد البيانات العلائقية وهو الأساس لتجنب تكرار البيانات.

تعريف علاقة واحد لمتعدد (1:N)

تعني علاقة 1:N ما يلي:

  • يمكن أن يرتبط سجل واحد في الجدول 'الأصلي' (جانب 'الواحد') بالعديد من السجلات في الجدول 'الفرعي' (جانب 'المتعدد').
  • يمكن أن يرتبط كل سجل في الجدول 'الفرعي' بسجل واحد فقط في الجدول 'الأصلي'.

تطبيق 1:N

نفرض هذه العلاقة عن طريق وضع المفتاح الأساسي لجانب 'الواحد' في جانب 'المتعدد' كمفتاح خارجي.

مثال: الأقسام والموظفون

  • يمكن أن يحتوي القسم (الأصل) على العديد من الموظفين (الفروع).
  • يمكن أن ينتمي الموظف (الفرع) إلى قسم واحد فقط (الأصل).
  1. الجدول الأصلي (Departments): المفتاح الأساسي = DeptID
  2. الجدول الفرعي (Employees): المفتاح الخارجي = DeptID

sql -- 1. إنشاء جدول 'الواحد' (الأصل) CREATE TABLE Departments ( DeptID INTEGER PRIMARY KEY, DeptName VARCHAR(50) );

-- 2. إنشاء جدول 'المتعدد' (الفرع) CREATE TABLE Employees ( EmployeeID INTEGER PRIMARY KEY, Name VARCHAR(100), DeptID INTEGER, -- المفتاح الخارجي (FK) FOREIGN KEY (DeptID) REFERENCES Departments(DeptID) );

إذا كان لدينا DeptID 10 ('Marketing')، يمكن أن يكون لدينا 100 موظف يشيرون جميعًا إلى DeptID 10. يتشارك الموظفون المائة بيانات القسم دون تكرار اسم القسم 100 مرة.