¿Quieres apoyarnos? Con nuestro Código: "VIVESINLIMITES" tendrás 2 MESES GRATIS en el plan mensual del Hosting SERED QUIERO APOYARTE!
La 3fn busca eliminar todos los problemas derivados de dependencias con atributos no claves.
La mayoría de las tablas al llegar a este nivel de normalización, están correctas.
Términos que deberías conocer para poder entenderla:
¿Como saber si una tabla esta en 3FN?
- La tabla debe estar en 2FN
- No deben existir dependencias transitivas.
Ejemplos
Tenemos nuestra tabla de las películas del cine.
| Titulo | Director | Nacionalidad director | Duracion | Puntuaciones | Productora id |
| El padrino | Francis Ford Coppola | American | 175 minutos | A | 1 |
| Toy Story | John Lasseter | American | 81 minutos | B | 2 |
La clave primaria de nuestra tabla es (Titulo), tomando en cuenta esto.
Las dependencias funcionales deberían ser así…
- Titulo -> Director
- Titulo -> Nacionalidad
- Titulo -> Duración
- Titulo -> Puntuación
- Titulo -> Productora
Pero no es el caso… Esta es la dependencia funcional actual:
- Titulo -> Director
- Director -> Nacionalidad
- Titulo -> Duración
- Titulo -> Puntuación
- Titulo -> Productora
Todas las columnas son determinadas por el titulo, excepto la nacionalidad del director que es determinada por el director.
Titulo -> director: El titulo determina el director, porque dependiendo de la película el director es diferente.
Director -> Nacionalidad: El titulo de la película no tiene ninguna relación con la nacionalidad, la única columna que puede determinarla es el director en si.
Todas las columnas son dependiente de la clave primaria ( Titulo ), excepto nacionalidad que depende de un atributo no clave (director), y director si depende de la clave (Titulo)
Esto es un problema de dependencias transitivas, porque el atributo no depende de la clave sino de un campo no clave. Aquí te dejo otro ejemplo de dependencia transitiva por si tienes dudas.
¿Solución? la vieja confiable, separar tablas..
| Titulo | Director | Duracion | Puntuaciones | Productora id |
| El padrino | Francis Ford Coppola | 175 minutos | A | 1 |
| Toy Story | John Lasseter | 81 minutos | B | 2 |
| Autor | Autor nacionalidad |
| Francis Ford Coppola | American |
| John Lasseter | American |
Resumen: Todos los atributos no claves deben tener como determinante la clave primaria, no un atributo no clave.
Los que navegan mas profundo, son los que descubren tesoros mas valiosos.
Anterior capitulo
Siguiente capitulo