logo

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

التبعية الوظيفية هي علاقة موجودة بين سمتين. يوجد عادةً بين المفتاح الأساسي والسمة غير الرئيسية داخل الجدول.

 X → Y 

يُعرف الجانب الأيسر من FD بأنه محدد، ويعرف الجانب الأيمن من الإنتاج بأنه تابع.

على سبيل المثال:

افترض أن لدينا جدول موظف بالسمات: Emp_Id، Emp_Name، Emp_Address.

25 ج إلى ك

هنا يمكن لسمة Emp_Id تحديد سمة Emp_Name لجدول الموظف بشكل فريد لأنه إذا كنا نعرف Emp_Id، فيمكننا معرفة اسم الموظف المرتبط به.

يمكن كتابة التبعية الوظيفية على النحو التالي:

 Emp_Id → Emp_Name 

يمكننا القول أن Emp_Name يعتمد وظيفيًا على Emp_Id.

أنواع التبعية الوظيفية


التبعية الوظيفية لنظام إدارة قواعد البيانات (DBMS).

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

  • A → B له تبعية وظيفية تافهة إذا كانت B مجموعة فرعية من A.
  • التبعيات التالية تافهة أيضًا مثل: A → A، B → B

مثال:

 Consider a table with two columns Employee_Id and Employee_Name. {Employee_id, Employee_Name} → Employee_Id is a trivial functional dependency as Employee_Id is a subset of {Employee_Id, Employee_Name}. Also, Employee_Id → Employee_Id and Employee_Name → Employee_Name are trivial dependencies too. 

2. التبعية الوظيفية غير التافهة

  • A → B له تبعية وظيفية غير تافهة إذا لم تكن B مجموعة فرعية من A.
  • عندما يكون التقاطع B فارغًا، يتم استدعاء A → B على أنه غير تافه بالكامل.

مثال:

 ID → Name, Name → DOB