התלות התפקודית היא מערכת יחסים המתקיימת בין שתי תכונות. זה קיים בדרך כלל בין תכונת המפתח הראשי לתכונת הלא מפתח בתוך טבלה.
X → Y
הצד השמאלי של FD ידוע כדטרמיננט, הצד הימני של הייצור ידוע כתלוי.
לדוגמה:
נניח שיש לנו טבלת עובדים עם תכונות: Emp_Id, Emp_Name, Emp_Address.
בחר מתוך טבלאות מרובות sql
כאן תכונת Emp_Id יכולה לזהות באופן ייחודי את תכונת Emp_Name של טבלת העובדים מכיוון שאם אנו מכירים את Emp_Id, נוכל לדעת את שם העובד המשויך אליו.
תלות תפקודית יכולה להיכתב כך:
Emp_Id → Emp_Name
אנו יכולים לומר ש-Emp_Name תלוי פונקציונלית ב-Emp_Id.
סוגי תלות תפקודית
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.
- כאשר צומת A B הוא NULL, אז A → B נקראת כלא טריוויאלית.
דוגמא:
ID → Name, Name → DOB