anomalias de la base de datos
Profesor: Rafael Caballero
Tema 6: Normalización
Contenido:
6
6.1.
6.2.
Normalización
Introducción
Redundancias y anomalías
6.2.1. Redundancia de datos
6.2.2. Anomalías de actualización
6.2.3. Obtención de datos incorrectos
6.3 Dependencias Funcionales
6.3.1 Introducción y definiciones
6.3.2 Cierre de un conjunto de dependenciasfuncionales
6.3.3 Cierre de un conjunto de atributos
6.3.4 Recubrimiento mínimo de un conjunto de dependencias funcionales
6.4. Primera, segunda y tercera forma normal
6.5. Forma normal de Boyce-Codd
6.5.1. Preservación de dependencias en la descomposición
6.5.2
Descomposición y reuniones no aditivas o sin pérdida
6.5.3. Preservación de dependencias en la descomposición y reuniones no aditivas6.6. Otras formas normales
6.7.
Resumen
Bibliografía
6.1 Introducción
Tal y como hemos visto para modelar un problema que pretendemos gestionar con un SGBD
relacional debemos:
- Definir el diagrama E-R que represente el problema de la manera más fiel posible
- Pasar el diagrama E-R al esquema relacional. El resultado será un conjunto de tabla + un
conjunto de restricciones. Lasrestricciones principales son:
o Claves primarias
o Restricciones de unicidad (para las claves candidatas no primarias)
o Claves ajenas
o Otras: check, domain, etc.
Puede parecer que con esto hemos terminado nuestra tarea, pero no es así; falta un punto
fundamental: la normalización del esquema de bases de datos. Esta normalización es necesaria
porque de otra forma se producirían anomalías quellevarán a una base de datos incoherente. Las
anomalías se pueden controlar por programación, pero nuestro objetivo es que con las
restricciones que indicamos al crear la tabla (en particular con las claves primarias, restricciones
de unicidad y claves ajenas) el sistema se encargue de forma automática de evitar ciertas
anomalías.
6.2 Redundancias y anomalías
Redundancia de datos
Unobjetivo del diseño de bases de datos relacionales es agrupar atributos en relaciones de
forma que se reduzca la redundancia de datos y así el espacio de almacenamiento necesario.
Ejemplo 1.
Los siguientes dos esquemas
6-1
Bases de datos y sistemas de información
Profesor: Rafael Caballero
Empleados(Id_empleado, NombreP, DirecciónP, Puesto, Salario, Centro)
Centros(NombreC, DirecciónC,Teléfono)
contienen la misma información que el siguiente:
Empleados_Centros(Id_empleado, NombreP, DirecciónP, Puesto, Salario,
DirecciónC, Teléfono)
Id_empleado
123A
456B
789C
012D
NombreE
Ana Almansa
Bernardo Botín
Carlos Crespo
David Díaz
NombreC
Informática
Matemáticas
CC. Empresariales
Id_empleado
123A
456B
789C
012D
Empleados
DirecciónE
Puesto
c/ ArgentalesProfesor
c/ Barcelona Administrativo
c/ Cruz
Catedrático
c/ Daroca
Ayudante
Centros
DirecciónC
Complutense
Complutense
Somosaguas
NombreP
Ana
Almansa
Bernardo
Botín
Carlos
Crespo
David Díaz
Salario
20.000
15.000
30.000
10.000
NombreC,
Centro
Informática
Matemáticas
CC. Empresariales
Informática
Teléfono
123
456
789
DirecciónP
c/ ArgentalesEmpleados_Centros
Puesto
Salario Centro
Profesor
20.000 Informática
DirecciónC
Complutense
Teléfono
123
c/ Barcelona
Administrativo
15.000 Matemáticas
Complutense
456
c/ Cruz
Catedrático
789
c/ Daroca
Ayudante
30.000 CC.
Somosaguas
Empresariales
10.000 Informática
Complutense
La relación Empleados_Centros presenta redundancia de datos porque se repitepara cada
empleado la información asociada al centro. Las relaciones con datos redundantes presentan
diferentes anomalías de actualización: son las anomalías de inserción, borrado y modificación.
Anomalías de actualización
•
Anomalías de inserción. Se produce en dos casos. En primer lugar, cuando se inserta una
nueva fila sin respetar las dependencias funcionales. En el ejemplo...
Regístrate para leer el documento completo.