POLÍTICAS DE NORMALIZACION DE BASES DE DATOS
El
proceso de normalización de bases de datos consiste en aplicar una
serie de reglas a las relaciones obtenidas tras el paso del modelo entidad-relación al modelo
relacional.
Las bases
de datos relacionales se normalizan para:
- Evitar la redundancia de los datos.
- Evitar problemas de actualización de los datos en las tablas.
- Proteger la integridad de los datos.
En el
modelo relacional es frecuente llamar tabla a una relación, aunque para que una tabla sea considerada como una
relación tiene que cumplir con algunas restricciones:
- Cada tabla debe tener su nombre único.
- No puede haber dos filas iguales. No se permiten los duplicados.
- Todos los datos en una columna deben ser del mismo tipo.
La normalización de bases
de datos otorga consistencia y elimina posibles anomalías lógicas de un modelo.
Existen varias formas normales, cada una numerada, de forma que para subir a un
nivel superior de una forma normal debes haber pasado por el anterior, es
decir, no puedes tener un modelo en 2NF si no está en 1NF. Existen 5 formas
normales, y además una extra que es una versión más fuerte de la tercera.
- Primera
Forma Normal, 1NF: En la mayoría de casos la simplifican diciendo que
todos los atributos deben ser atómicos, y no multivaluados. Esto es
cierto en tanto en cuanto el resto de reglas son implícitas de los sistemas de
gestión de bases de datos. Pero las
reglas completas son las siguientes:
- No hay orden de arriba-a-abajo en las filas, es decir, el orden de las tuplas no importa para la información.
- No hay orden de izquierda-a-derecha en las columnas, es decir, el orden de las columnatas no importa para la información.
- No hay filas duplicadas.
- Cada atributo tiene un único dominio aplicable y un único valor de dicho dominio, y aun más allá, la solución a esto no es crear nuevos atributos para contemplar posibles valores de la multivaluación.
Vamos a explicarlo de
manera sencilla. Supongamos una entidad “Persona” que contiene una clave
primaria, nombre, apellido y teléfono. Pero claro, una persona puede tener
múltiples teléfonos de contacto, así que podríamos pensar en utilizar el campo
teléfono para meter varios separados por coma
Segunda Forma Normal 2NF: Una tabla está en 2NF si está en 1NF y además dada cualquier
clave candidata y cualquier atributo que no sea de la clave candidata,, el
atributo depende de toda la clave y no solamente de parte de ella.
Tercera Forma Normal, 3NF: Una tabla está en 3NF si está en 2NF y además todos
los atributos dependen directamente de la clave candidata sin que existan
dependencias transitivas a través de cualquier otro atributo que no pertenezca
a la clave.
- Forma
Normal Boyce-Codd, BCNF o 3.5NF: Es una versión más fuerte de la 3NF. Requiere
que si un atributo no pertenece a la clave candidata, dicho atributo debe
depender de la clave candidata completa y de nada más que de la clave candidata
completa. Si una tabla está en 3NF, tiene varias claves candidatas compuestas y
éstas tienen algún atributo en común, no está en BCNF.
- Cuarta
Forma Normal, 4NF: Una tabla está en 4NF si está en 3NF y no posee
dependencias multivaluadas no triviales. Una tabla con una dependencia
multivaluada es una donde la existencia de dos o más relaciones independientes
muchos a muchos causa redundancia, y es esta redundancia la que es
suprimida por la cuarta forma normal. Siempre es posible llegar a 4NF, pero no
siempre es deseable a nivel de desarrollo.
- Quinta
Forma Normal, 5NF: También se la conoce como forma normal de
proyección-unión (PJ/NF).
Una tabla está en 5NF si está en 4NF y cada dependencia de unión en ella es
implicada por las claves candidatas.
Fuente:
http://metamodel.wordpress.com/2011/03/09/normalizacion-de-bases-de-datos-relacionales/
Cómo siempre digo. Espero les sea de utilidad esta información. Saludos.

