Normalizacin 1 FN2 FN3 FNFNBC Normalizacin l Una
Normalización 1 FN-2 FN-3 FN-FNBC
Normalización l Una vez obtenido el esquema relacional resultante del esquema entidad/relación que representa la base de datos, normalmente tendremos una buena base de datos. Pero puede haber problemas: ¡ ¡ Redundancia: Datos que se repiten continua e innecesariamente por las tablas de las bases de datos. Ambigüedades. Datos que no clarifican suficientemente el registro al que representan. Pérdida de restricciones de integridad. Normalmente debido a dependencias funcionales. Anomalías en operaciones de modificación de datos. l l Insertar=Repetir tuplas en una tabla para variar unos pocos datos. Borrar=Eliminar varias tuplas de varias tablas
Formas normales Teoría de normalización iniciada por Codd y continuada por otros autores. Definió en 1970 la 1 FN. Consecutivamente aparecieron 2 FN, 3 FN, Boyce-Codd, 4 FN y 5 FN l Una tabla puede encontrarse en primera forma normal y no en segunda forma normal, pero no al contrario. Es decir los números altos de formas normales son más restrictivos (la quinta forma normal cumple todas las anteriores). l
1ª FN l Se dice que una tabla se encuentra en primera forma normal si impide que un atributo de una tupla pueda tomar más de un valor: ¡ NO ESTA EN PRIMERA FORMA NORMAL l l ¡ 1212 A-Andrés-Mantenimiento 12345345 G-Andrea-Dirección, Gestión SI ESTA EN PRIMERA FORMA NORMAL l l l 1212 A-Andrés-Mantenimiento 12345345 G-Andrea-Dirección 12345345 G-Andrea-Gestión
2ª FN La tabla está en 1 FN y además cada atributo que no sea clave, depende de forma completa respecto de cualquiera de las claves. l La clave principal completa debe hacer dependientes al resto de atributos l Si hay atributos que dependen sólo de parte de la clave, entonces esa parte de la clave y esos atributos formarán otra tabla. l
2ª FN
3ª FN l Una tabla está en 2 FN y además ningún atributo que no sea clave depende transitivamente de las claves de la tabla. l Es decir no está en 3 FN si algún atributo depende de atributos que no son clave.
3ª FN
FNBC Una tabla está en FNBC si está en 3 FN y además todo determinante es una clave candidata l Ejemplo Sea una empresa en la que: l ¡ ¡ Un trabajador puede trabajar en varios departamentos. Un departamento tiene varios encargados Cada trabajador sólo tiene asignado un encargado Un encargado sólo puede serlo en un departamento.
FNBC
Ejercicio: tabla sin normalizar Situación de partida: Tabla “a lo loco” AGENTES nombre empresa direccion_empresa Equipo 1 Contacto 1 Equipo 2 Barca Juan Palomo Futbolistas SL Mayor, 34. Villaconejos Real Madrid Valdano Arguiñano Los Cracks Luna, 52. Donostia Real Madrid Buyo Pepito Pi Timo SL Real, 25. Soria Barca Rosell Contacto 2 Rosell
Primera forma normal (eliminar atributos multivaluados) • No existe clave de agente Creo una • URL multivaluada Duplico filas AGENTES Clave nombre empresa direccion_empresa Equipo Contacto 1 Juan Palomo Futbolistas SL Mayor, 34. Villaconejos R. Madrid Valdano 1 Juan Palomo Futbolistas SL Mayor, 34. Villaconejos Barca Rosell 2 Arguiñano Los Cracks Luna, 52. Donostia R. Madrid Buyo 3 Pepito Pi Timo SL Real 25. Soria Barca Rosell
Segunda forma normal (dependencia de la clave) • Crear tablas separadas para aquellos grupos de datos que se aplican a varios registros. • Relacionar estas tablas mediante una clave externa Agentes Clave 1 nombre empresa Juan Palomo Futbolistas SL direccion_empresa Mayor, 34. Villaconejos 2 Arguiñano Los Craks Luna, 52. Donostia 3 Pepito Pi Timo SL Real 25, Soria Contactos Cl Ind equipo Contacto 1 1 R. Madrid Valdano 2 1 Barca Rosell 3 2 R. Madrid Buyo 4 3 Barca Rosell
Tercera forma normal (dependencias transitivas) • direccion de la empresa depende de empresa dependencia transitiva nueva tabla empresas contactos Cl nombre Cl Emp 1 Juan Palomo 1 2 Arguiñano 2 3 Pepito Pi 3 empresa direccion 1 Melones Alba Mayor, 34. Villaconejos 2 Restaurante Pi Luna, 52. Donostia 3 Timo SL Real, 25. Soria Contactos Cl Ind equipo Contacto 1 1 R. Madrid Valdano 2 1 Barca Rosell 3 2 R. Madrid Buyo 4 3 Barca Rosell
Boyce-Codd (dependencia de la clave) • El contacto de un equipo, trabaja SOLO para ese equipo agentes Cl contactos nombre Emp Clave contacto Equipo 1 Juan Palomo 1 1 Valdano R. Madrid 2 Arguiñano 2 2 Rosell Barca 3 Pepito Pi 3 3 Buyo R. Madrid empresas Cl Agentes-contactos empresa direccion 1 Melones Alba Mayor, 34. Villaconejos 2 Restaurante Pi Luna, 52. Donostia 1 1 3 Timo SL Real, 25. Soria 1 2 2 3 3 2 agente contacto
- Slides: 15