logo

Dependència funcional

La dependència funcional és una relació que existeix entre dos atributs. Normalment existeix entre la clau primària i l'atribut no clau dins d'una taula.

 X → Y 

El costat esquerre de FD es coneix com a determinant, el costat dret de la producció es coneix com a dependent.

Per exemple:

Suposem que tenim una taula d'empleats amb atributs: Emp_Id, Emp_Name, Emp_Address.

Expressions java lambda

Aquí l'atribut Emp_Id pot identificar de manera única l'atribut Emp_Name de la taula de l'empleat perquè si coneixem l'Emp_Id, podem dir-hi el nom de l'empleat associat.

La dependència funcional es pot escriure com:

 Emp_Id → Emp_Name 

Podem dir que Emp_Name depèn funcionalment de Emp_Id.

Tipus de dependència funcional


Dependència funcional del SGBD

1. Dependència funcional trivial

  • A → B té una dependència funcional trivial si B és un subconjunt de A.
  • Les dependències següents també són trivials com: A → A, B → B

Exemple:

 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. Dependència funcional no trivial

  • A → B té una dependència funcional no trivial si B no és un subconjunt de A.
  • Quan A la intersecció B és NULL, llavors A → B s'anomena com a no trivial complet.

Exemple:

 ID → Name, Name → DOB