|
|
|
|||||||||||||||||||||||||||||
|
|
Proceso de normalizaciónBases de datos-Modelo de datos relaccional-Proceso de normalizaciónEl proceso de normalización es un estándar que consiste,
básicamente, en un proceso de conversión de las relaciones entre
las entidades, evitando:
Tomando como referencia la tabla siguiente:
Se plantean una serie de problemas:
Asegurando:
El proceso de normalización nos conduce hasta el modelo físico de datos y consta de varias fases denominadas formas normales, estas formas se detallan a continuación. Definición de la claveAntes de proceder a la normalización de la tabla
lo primero que debemos de definir es una clave, esta clave deberá
contener un valor único para cada registro (no podrán existir dos
valores iguales en toda la tabla) y podrá estar formado por un único
campo o por un grupo de campos. Primera forma normal (1NF)Se dice que una tabla se encuentra en primera forma
normal (1NF) si y solo si cada uno de los campos contiene un único
valor para un registro determinado. Supongamos que deseamos realizar
una tabla para guardar los cursos que están realizando los alumnos
de un determinado centro de estudios, podríamos considerar el siguiente
diseño:
Podemos observar que el registro de código 1 si cumple
la primera forma normal, cada campo del registro contiene un único
dato, pero no ocurre así con los registros 2 y 3 ya que en el campo
cursos contiene más de un dato cada uno. La solución en este caso
es crear dos tablas del siguiente modo:
Como se puede comprobar ahora todos los registros
de ambas tablas contienen valores únicos en sus campos, por lo tanto
ambas tablas cumplen la primera forma normal. Segunda forma normal (2NF)La segunda forma normal compara todos y cada uno de los campos de la tabla con la clave definida. Si todos los campos dependen directamente de la clave se dice que la tabla está es segunda forma normal (2NF). Supongamos que construimos una tabla con los años que cada empleado ha estado trabajando en cada departamento de una empresa:
Tomando como punto de partida que la clave de esta tabla está formada por los campos código de empleado y código de departamento, podemos decir que la tabla se encuentra en primera forma normal, por tanto vamos a estudiar la segunda:
Por tanto, al no depender todos los campos de la totalidad de la clave la tabla no está en segunda forma normal, la solución es la siguiente:
Podemos observar que ahora si se encuentras las tres tabla en segunda forma normal, considerando que la tabla A tiene como índice el campo Código Empleado, la tabla B Código Departamento y la tabla C una clave compuesta por los campos Código Empleado y Código Departamento. Tercera forma normal (3NF)Se dice que una tabla está en tercera forma normal si y solo si los campos de la tabla dependen únicamente de la clave, dicho en otras palabras los campos de las tablas no dependen unos de otros. Tomando como referencia el ejemplo anterior, supongamos que cada alumno sólo puede realizar un único curso a la vez y que deseamos guardar en que aula se imparte el curso. A voz de pronto podemos plantear la siguiente estructura:
Estudiemos la dependencia de cada campo con respecto a la clave código:
Por esta última razón se dice que la tabla no está en 3NF. La solución sería la siguiente:
Una vez conseguida la segunda forma normal, se puede estudiar la cuarta forma normal. Cuarta forma normal (4NF)Una tabla está en cuarta forma normal si y sólo si para cualquier combinación clave - campo no existen valores duplicados. Veámoslo con un ejemplo:
Comparemos ahora la clave (Figura) con el atributo Tamaño, podemos observar que Cuadrado Grande está repetido; igual pasa con Círculo Azul, entre otras. Estas repeticiones son las que se deben evitar para tener una tabla en 4NF. La solución en este caso sería la siguiente:
Ahora si tenemos nuestra base de datos en 4NF. Otras formas normalesExisten otras dos formas normales, la llamada quinta forma normal (5FN) que no detallo por su dudoso valor práctico ya que conduce a una gran división de tablas y la forma normal dominio / clave (FNDLL) de la que no existe método alguno para su implantación.
Este manual como su contenido ha sido
integramente elaborado por
Claudio Casares www.lobocom.es/~claudio nuestro agradecimiento |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|