Está en la página 1de 5

Forma normal (base de datos)

En la teora de bases de datos relacionales, las formas normales (NF) proporcionan los
criterios para determinar el grado de vulnerabilidad de una tabla a inconsistencias y anomalas
lgicas. Cuanto ms alta sea la forma normal aplicable a una tabla, menos vulnerable ser a
inconsistencias y anomalas. Cada tabla tiene una "forma normal ms alta" (HNF): por
definicin, una tabla siempre satisface los requisitos de su HNF y de todas las formas
normales ms bajas que su HNF; tambin por definicin, una tabla no puede satisfacer los
requisitos de ninguna forma normal ms arriba que su HNF.
Las formas normales son aplicables a tablas individuales; decir que una base de datos entera
est en la forma normal n es decir que todas sus tablas estn en la forma normal n.
Los recin llegados al diseo de bases de datos a veces suponen que la normalizacin
procede de una manera iterativa, es decir un diseo 1NF primero se normaliza a 2NF,
entonces a 3NF, etctera. sta no es una descripcin exacta de cmo la normalizacin trabaja
tpicamente. Una tabla sensiblemente diseada es probable que est en 3NF en la primera
tentativa; adems, si est en 3NF, tambin es extremadamente probable que tenga una forma
HNF de 5NF. Conseguir formas normales "ms altas" (sobre 3NF) usualmente no requiere un
gasto adicional de esfuerzo por parte del diseador, porque las tablas 3NF usualmente no
necesitan ninguna modificacin para satisfacer los requisitos de estas formas normales ms
altas.
Edgar F. Codd originalmente defini las tres primeras formas normales (1NF, 2NF, y 3NF).
Estas formas normales se han resumido como requiriendo que todos los atributos no-clave
sean dependientes en "la clave, la clave completa, y nada excepto la clave". Las cuarta y
quinta formas normales (4NF y 5NF) se ocupan especficamente de la representacin de las
relaciones muchos a muchos y uno muchos entre los atributos. La sexta forma normal (6NF),
en pocas palabras, se basa en el principio de que si se tiene ms de dos claves candidatas en
una tabla, se tendrn que crear otras tablas con estas.
Por ejemplo si tenemos "tem" con un id cdigo de producto y con los atributos descripcin y
precio que son claves candidatas se tendra que crear otras tablas separando la tabla tem:
ItemDesc {cdigo_producto*, Descripcin} ItemPrecio {cdigo_producto*, Precio}.
La sexta forma normal no es muy utilizada porque genera ms tablas cuando tenemos
pequeas bases de datos.

El proceso de normalizacin de bases de datos consiste en designar y aplicar una serie de


reglas a las relaciones obtenidas tras el paso del modelo entidad-relacin al modelo relacional.
Las bases de datos relacionales se normalizan para:

Evitar la redundancia de los datos.

Disminuir problemas de actualizacin de los datos en las tablas.

Proteger la integridad de los datos.

En el modelo relacional es frecuente llamar tabla a una relacin, aunque para que una tabla
sea considerada como una relacin 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.

Que son Normalizacin y Formas Normales Reglas


de Normalizacin?

Normalizacin de bases de datos


El proceso de normalizacin de bases de datos consiste en aplicar una serie de reglas a las
relaciones obtenidas tras el paso del modelo entidad-relacin al modelo relacional.
Las bases de datos relacionales se normalizan para:
* Evitar la redundancia de los datos.
* Evitar problemas de actualizacin de los datos en las tablas.
* Proteger la integridad de los datos.
En el modelo relacional es frecuente llamar tabla a una relacin, aunque para que una tabla sea
considerada como una relacin 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.

Formas Normales
Las formas normales son aplicadas a las tablas de una base de datos. Decir que una base de
datos est en la forma normal N es decir que todas sus tablas estn en la forma normal N.

En general, las primeras tres formas normales son suficientes para cubrir las necesidades de la
mayora de las bases de datos. El creador de estas 3 primeras formas normales (o reglas) fue
Edgar F. Codd.[1]

Primera Forma Normal


Una tabla est en Primera Forma Normal si:
* Todos los atributos son atmicos. Un atributo es atmico si los elementos del dominio son
indivisibles, mnimos.
* La tabla contiene una llave primaria nica.

* La llave primaria no contiene atributos nulos.


* No debe existir variacin en el nmero de columnas.
* Los Campos no llave deben identificarse por la llave (Dependencia Funcional)
* Debe Existir una independencia del orden tanto de las filas como de las columnas, es decir, si los
datos cambian de orden no deben cambiar sus significados
Una tabla no puede tener mltiples valores en cada columna. Los datos son atmicos. (Si a cada
valor de X le pertenece un valor de Y y viceversa)
Esta forma normal elimina los valores repetidos dentro de una BD

Segunda Forma Normal


Dependencia Funcional. Una relacin est en 2FN si est en 1FN y si los atributos que no forman
parte de ninguna clave dependen de forma completa de la clave principal. Es decir que no existen
dependencias parciales. (Todos los atributos que no son clave principal deben depender
nicamente de la clave principal).
En otras palabras podramos decir que la segunda forma normal est basada en el concepto de
dependencia completamente funcional. Una dependencia funcional x \rightarrow y es
completamente funcional si al eliminar los atributos A de X significa que la dependencia no es
mantenida, esto es que A \in X, X - \{A\} \nrightarrow Y. Una dependencia funcional x \rightarrow y
es una dependencia parcial si hay algunos atributos A \in X que pueden ser eliminados de X y la
dependencia todava se mantiene, esto es A \in X, X - \{A\} \rightarrow Y.
Por ejemplo {DNI, ID_PROYECTO} \rightarrow HORAS_TRABAJO (con el DNI de un empleado y
el ID de un proyecto sabemos cuntas horas de trabajo por semana trabaja un empleado en dicho
proyecto) es completamente dependiente dado que ni DNI \rightarrow HORAS_TRABAJO ni
ID_PROYECTO \rightarrow HORAS_TRABAJO mantienen la dependencia. Sin embargo {DNI,
ID_PROYECTO} \rightarrow NOMBRE_EMPLEADO es parcialmente dependiente dado que DNI
\rightarrow NOMBRE_EMPLEADO mantiene la dependencia.

Tercera Forma Normal


La tabla se encuentra en 3FN si es 2FN y si no existe ninguna dependencia funcional transitiva
entre los atributos que no son clave.
Un ejemplo de este concepto sera que, una dependencia funcional X->Y en un esquema de
relacin R es una dependencia transitiva si hay un conjunto de atributos Z que no es un
subconjunto de alguna clave de R, donde se mantiene X->Z y Z->Y.
Por ejemplo, la dependencia SSN->DMGRSSN es una dependencia transitiva en EMP_DEPT de la
siguiente figura. Decimos que la dependencia de DMGRSSN el atributo clave SSN es transitiva va
DNUMBER porque las dependencias SSNDNUMBER y DNUMBERDMGRSSN son
mantenidas, y DNUMBER no es un subconjunto de la clave de EMP_DEPT. Intuitivamente,
podemos ver que la dependencia de DMGRSSN sobre DNUMBER es indeseable en EMP_DEPT
dado que DNUMBER no es una clave de EMP_DEPT.
Formalmente, un esquema de relacion R est en 3 Forma Normal Elmasri-Navathe,[2] si para toda
dependencia funcional X \rightarrow A, se cumple al menos una de las siguientes condiciones:

1. X es superllave o clave.
2. A es atributo primo de R; esto es, si es miembro de alguna clave en R.
Adems el esquema debe cumplir necesariamente, con las condiciones de segunda forma normal.

Forma normal de Boyce-Codd


La tabla se encuentra en FNBC si cada determinante, atributo que determina completamente a
otro, es clave candidata. Deber registrarse de forma anillada ante la presencia de un intervalo
seguido de una formalizacion perpetua, es decir las variantes creadas, en una tabla no se llegaran
a mostrar, si las ya planificadas, dejan de existir.
Formalmente, un esquema de relacin R est en FNBC, si y slo si, para toda dependencia
funcional X \rightarrow A vlida en R, se cumple que
1. X es superllave o clave.
De esta forma, todo esquema R que cumple FNBC, est adems en 3FN; sin embargo, no todo
esquema R que cumple con 3FN, est en FNBC.

Cuarta Forma Normal


Una tabla se encuentra en 4FN si, y slo si, para cada una de sus dependencias mltiples no
funcionales X->->Y, siendo X una super-clave que, X es o una clave candidata o un conjunto de
claves primarias.

Quinta Forma Normal


Una tabla se encuentra en 5FN si:
* La tabla est en 4FN
* 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 est en la 5FN si, y slo si, cada relacin de
dependencia se encuentra definida por las claves candidatas.

También podría gustarte