FUNDAMENTOS
BASES DE DATOS
Normalización
¿Qué es?
El proceso de normalización consiste en aplicar a un modelo relacional un
conjunto de normas que eviten la duplicidad y la perdida de integridad de los
datos.
Las formas normales existentes son:
1. Primera Forma Normal (FN1)
2. Segunda Forma Normal (FN2)
3. Tercera Forma Normal (FN3)
4. Forma Normal Boyce Codd (FNBC)
5. Cuarta Forma Normal (FN4)
6. Quinta Forma Normal (FN5)
Problemas causados por la redundancia
Almacenamiento Redundante: Repetición de datos.
1. Anomalías de Actualización: Puede no siempre
actualizarse todas las copias de los datos y
presentarse inconsistencias.
2. Anomalías de Inserción: Puede que no siempre se
pueda insertar cierta información, a no ser que no
tenga ningún vinculo con ella.
3. Anomalías de borrado: Puede que al borrar datos se
pierda también información ligada a ella.
El Fin de los Diseños Conceptuales
Proporcionar un conjunto de Esquemas de Relaciones
y de Restricciones de Integridad (RI), que se puedan
considerar cono un buen punto de partida para el
diseño final de bases de datos.
Las RI pueden refinan en cierta medida el
modelo relacional de base de datos para
evitar redundancia de datos.
Dependencias Funcionales (DF)
Son un tipo de restricción de Integridad que generaliza el concepto de clave.
Una DF es una asociación entre atributos que los convierte dependientes
entre si.
Ejemplo: Para el siguiente caso el atributo nombre depende funcionalmente
de la cédula
Cedula Nombre Sexo Jornada Horas/semana
2-000-0001 Marta Femenino 100% 40
2-000-0002 Carlos Masculino 100% 40
2-000-0003 Ana Femenino 50% 20
Formas Normales
Dado un esquema de relación hay que tomar en
consideración si es necesario descomponerlo en
relaciones más pequeñas.
De tomarse esta decisión debe ser por un
previo análisis del comportamiento de los
datos.
Para lograr estas decisiones se han formado una serie de
formas normales que utilizaremos como guía.
Primer Forma Normal (FN1)
Esta primer forma normal se basa en la definición de las DF.
Una relación se encuentra en FN1 si todos los campos contienen
únicamente valores atómicos.
Código Año Semestre Grupo Cupo
IC-0001 2008 I 50 36
IC-0001 2008 I 51 24
IC-0001 2008 II 50 36
IC-0003 2009 I 50 24
Segunda Forma Normal (FN2)
Una relación esta en FN2 si:
1. Esta en FN1.
2. Cada atributo no principal tiene dependencia funcional
completa respecto de cada una de las claves.
• Es decir no se cumple cuando algún atributo no principal depende
funcionalmente de algún subconjunto de la clave.
3. Es principalmente de interés histórico.(Se asumirá que si
esta en FN1 también se encuentra en FN2)
Tercera Forma Normal (FN3)
Se encuentra basada en el concepto de dependencia transitiva:
Un esquema de relación se encuentra en FN3 si:
1. Esta en FN2.
2. No existe ningún atributo no principal que dependa transitivamente de
alguna clave de R.
Cedula Horas semanales Jornada Asistencia consejos
1-000-0001 36 100% Si
1-000-0002 20 50% No
1-000-0003 42 100% Si
Forma Normal Boyce Codd (FNBC)
Se dice que una relación se encuentra en FNBC si y solo si, todo
determinante es una clave candidata.
Código Año Semestre Grupo Cupo
IC-0001 2008 I 50 36
IC-0001 2008 I 51 24
IC-0001 2008 II 50 36
IC-0003 2009 I 50 24
Cuarta Forma Normal (FN4)
Una tabla se encuentra en 4FN si, y sólo si, para cada una de sus
dependencias múltiples no funcionales, estas se relacionan únicamente a la
llave primaria.
Código Código Semestre Grupo Cupo
Introducción a la
1 IC-0001 Computación 4
programación
Taller de
2 IC-0002 Computación 4
programación
3 IC-0003 Contabilidad 1 Administración 3
4 IC-0004 Bases de datos Computación 4
Introducción a la
5 IC-0001 Computación 4
programación
Quinta Forma Normal (FN5)
No existen relaciones de dependencias no triviales que no siguen los
criterios de las claves.
Una tabla que se encuentra en la 4FN se dice que esta en la 5FN si, y sólo
si, cada relación de dependencia se encuentra definida por las claves
candidatas.
Código Código Semestre Grupo Cupo
Introducción a la
1 IC-0001 Computación 4
programación
Taller de
2 IC-0002 Computación 4
programación
3 IC-0003 Contabilidad 1 Administración 3
4 IC-0004 Bases de datos Computación 4
Introducción a la
5 IC-0001 Computación 4
programación