Bases De Datos. Formas Normales.Optimizar Tablas
Enviado por whisho • 17 de Octubre de 2011 • 1.269 Palabras (6 Páginas) • 1.009 Visitas
Bases de Datos: Formas Normales. Optimizar Tablas
La normalización es un proceso que pretende conseguir tablas con una estructura óptima y eficaz. El proceso de normalización está basado en lograr la independencia de los datos respecto a las aplicaciones que los usan.
Antes de empezar el proceso, se han de conocer las tablas que intervendrán y las relaciones que las unen. Si no se conocen a partir del análisis previo, se buscan todos los nombres (sustantivos) que han sido empleados en la definición del problema. Algunos de esos nombres serán las entidades, otros dependerán de ellas y serán los atributos. Otros no formarán parte ni de las entidades ni de los atributos, son parte del lenguaje necesario para describir el problema a solucionar mediante la creación de una base de datos.
Ejemplo práctico.
<<...a cada cliente, al pasar por Caja... se marcan por la caja registradora los artículos que ha comprado. Con los datos de los artículos se hace una factura por el importe total de las mercancías adquiridas que se imprime y se entrega al cliente. Los datos de la factura se almacenan para su posterior tratamiento informático que comprende...>>.
Las tablas son sustantivos, por lo que tenemos los siguientes: cliente, Caja, caja registradora, artículos, datos de los artículos, factura, importe total, mercancías adquiridas, datos de la factura. De estos nombres, algunos son atributos de otros: datos de los artículos y artículos, datos de la factura, importe total y factura. De cada cliente no se piden datos, por lo que aunque sea una tabla, si no se necesitan sus datos, no se creará esa entidad. Caja con mayúscula se refiere a un objeto con el que se realizan procesos, por lo que no se necesita almacenar información de ellos. De cada una de las cajas registradoras, tal vez se necesite para las facturas, el número de caja, por lo que se considera una entidad más. Mercancías adquiridas y artículos que ha comprado son sinónimos, por lo que solo se tratará de artículos.
Las tablas encontradas tras el análisis son: artículos, factura y caja registradora. Caja registradora se puede considerar un atributo de factura, por lo que tenemos dos tablas.
Las relaciones se pueden encontrar conociendo todos los verbos que aparecen en la definición del problema. Se eliminan aquellos verbos que son necesarios para el lenguaje y se buscan aquellos que implican dos o más entidades (sustantivos) que ya se han encontrado.
En el ejemplo han aparecido los verbos: pasar, se marcan, ha comprado, se hace una factura, imprime, entrega, almacena. De estos verbos, los que asocian entidades son: marcar, comprar. Los verbos pasar, hacer factura, imprimir, entregar, almacenar, se refieren a procesos que se van a realizar, no a asociaciones entre entidades.
Se han obtenido las siguientes entidades con sus relaciones: clientes, comprar artículos y marcar artículos en factura. Como no se necesitan los datos de los clientes, queda la relación marcada (en la caja registradora) que une las tablas artículos, y factura. La operación marcar en la caja registradora significa que los artículos se incluyen en una factura que se entregará al cliente para su liquidación, consiguiéndose obtener el modelo entidad-relación siguiente:
Hay cinco niveles de normalización, siendo cada vez más complejo el proceso de obtención de tablas normalizadas. Para bases de datos relativamente sencillas se puede terminar la normalización en el tercer nivel o tercera forma normal.
El proceso de normalización se basa en la descomposición sin pérdida de las tablas que están en una forma normal inferior, obteniéndose una forma normal superior. El proceso de descomposición sin pérdida, significa que se ha de dividir o descomponer la tabla en otras con menor cantidad de atributos sin que haya pérdida de información.
Formas normales y dependencias funcionales.
Primera Forma Normal o 1FN:
La Primera Forma Normal, o 1FN, es la más elemental de todas. Una tabla está en 1FN si el valor que contiene un atributo de un registro, un campo, es único y elemental. En cada uno de los atributos sólo se puede incluir un dato, aunque sea compuesto, pero no se pueden incluir una lista de datos. Por ejemplo, no se pueden incluir en el atributo Dirección el domicilio habitual y el de vacaciones; habría que crear dos registros que se diferenciarán por el atributo Dirección:
NIF Ape Nom Dir CPost Pobl Prov
1 García Francisco C/Marín 16 33698 Oviedo Asturias
2 Sanchez Luisa C/Tenerías
...