logo

Funkcionālā atkarība

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


DBVS funkcionālā atkarība

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