Funkcionālā atkarība ir attiecības, kas pastāv starp diviem atribūtiem. Tas tabulā parasti atrodas starp primāro atslēgu un bezatslēgas atribūtu.
X → Y
FD kreisā puse ir zināma kā determinants, bet produkcijas labā puse ir pazīstama kā atkarīgā puse.
Piemēram:
Pieņemsim, ka mums ir darbinieku tabula ar atribūtiem: Emp_Id, Emp_Name, Emp_Address.
svarīgs
Šeit Emp_Id atribūts var unikāli identificēt darbinieku tabulas atribūtu Emp_Name, jo, ja mēs zinām Emp_Id, mēs varam noteikt ar to saistīto darbinieka vārdu.
Funkcionālo atkarību var uzrakstīt šādi:
Emp_Id → Emp_Name
Mēs varam teikt, ka Emp_Name ir funkcionāli atkarīgs no Emp_Id.
Funkcionālās atkarības veidi
1. Triviāla funkcionālā atkarība
- A → B ir triviāla funkcionālā atkarība, ja B ir A apakškopa.
- Šādas atkarības ir arī triviālas, piemēram: A → A, B → B
Piemērs:
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. Netriviāla funkcionālā atkarība
- A → B ir netriviāla funkcionāla atkarība, ja B nav A apakškopa.
- Ja A krustojums B ir NULL, tad A → B sauc par pilnīgu netriviālu.
Piemērs:
ID → Name, Name → DOB