Está en la página 1de 9

Instituto Tecnolgico Superior de la Montaa Curso ESPCIAL..Taller de base de datos Ulises Lpez Milln.

Febrero-Junio-2014

Captulo 5. Normalizacin 5.1 Definicin de normalizacin


En 2008, Fray Len Osorio Rivera (2008) seala que La normalizacin es un concepto que hace referencia a las relaciones. Basicamente, el principio de Normalizacin indica que las tablas de la bases de datos eliminaran las incoherencias y redundancias, y minimizarn la ineficacia. (p.36) En 2004, Peter Rob y Carlos Coronel afirman que La normalizacin es un proceso que consiste en asignar atributos a las entidades. La normalizacin reduce las redundancias de datos, y por extensin, ayuda a eliminar las anomalas de datos que se derivan de las redundancias. La normalizacin no elimina las redundancias de datos, pero si produce la redundancia controlada que permite vincular las tablas de base de datos. (p.176) La normalizacin tambin hace las cosas fciles de entender. Las guas que la normalizacin provee crean el marco de referencia para simplificar una estructura de datos compleja. Una base de datos normalizada ocupa menos espacio en disco que una no normalizada (consumo de espacio). Hay menos repeticin de datos, lo que tiene como consecuencia un mucho menor uso de espacio en disco. Las reglas de normalizacin son guas para crear tablas que sean fciles de manejar, as como flexibles y eficientes. A veces puede ocurrir que normalizar los datos hasta el nivel ms alto no tenga sentido. La normalizacin es una ciencia subjetiva. Determinar las necesidades de simplificacin depende del diseador de la base de datos. Si la base de datos va a proveer informacin a un solo usuario para un propsito simple y existen pocas posibilidades de expansin, normalizar los datos hasta la 3FN quiz sea algo exagerado.

Instituto Tecnolgico Superior de la Montaa Curso ESPCIAL..Taller de base de datos Ulises Lpez Milln.Febrero-Junio-2014

Existen bsicamente tres niveles de normalizacin: Primera Forma Normal (1NF), Segunda Forma Normal (2NF) y Tercera Forma Normal (3NF). Cada una de estas formas tiene sus propias reglas. Cuando una base de datos se conforma a un nivel, se considera normalizada a esa forma de normalizacin. No siempre es una buena idea tener una base de datos conformada en el nivel ms alto de normalizacin, puede llevar a un nivel de complejidad que pudiera ser evitado si estuviera en un nivel ms bajo de normalizacin. En la tabla siguiente se describe brevemente en qu consiste cada una de las reglas, y posteriormente se explican con ms detalle.

Regla
(1FN) Primera Forma Normal (2FN) Segunda Forma Normal

Descripcin
Incluye la eliminacin de todos los grupos repetidos Asegura que todas las columnas que no son llave sean completamente dependientes de la llave primaria (PK) Elimina cualquier dependencia transitiva. Una dependencia transitiva es aquella en la cual las columnas que no son llaves son dependientes de otras columnas que tampoco son llave.
Tabla1. Formas nornales

(3FN) Tercera Forma Normal

Existen seis niveles ms de normalizacin: Forma Normal Boyce- Codd, Cuarta Forma Normal (4NF) Quinta Forma Normal (5NF) o Forma Normal de Proyeccin-Unin Forma Normal de Proyeccin-Unin Fuerte Forma Normal de Proyeccin-Unin Extra Fuerte Forma Normal de Clave de Dominio.

Estas formas de normalizacin pueden llevar las cosas ms all de lo que se requiere. stas existen para hacer una base de datos realmente relacional. Tienen que ver principalmente con dependencias mltiples y claves relacionales.

Instituto Tecnolgico Superior de la Montaa Curso ESPCIAL..Taller de base de datos Ulises Lpez Milln.Febrero-Junio-2014

Primera Forma Normal (1FN) La regla de la Primera Forma Normal establece que las columnas repetidas deben eliminarse y colocarse en tablas separadas. Una relacin R se encuentra en 1FN si y solo s por cada rengln columna contiene valores atmicos. Proceso: Elimine los grupos repetidos de las tablas individuales. Cree una tabla independiente para cada conjunto de datos relacionados. Identifique cada conjunto de datos relacionados con una clave principal (PK) Ningn valor en la tabla ser nulo o vaco

Ejemplo1: Considerar la siguiente tabla denominada Empleado.

ID_Empleado Nombre_Empleado #_Telefono_Empleado


123 456 987 Juan Roci Jos 757 119 34 98 757 778 98 90 47 6 89 67 47 6 09 76

Tabla2. Relacion Empleado

Como se observa un empleado puede tener ms de un telfono al cual consultarle, es por ello que para aplicar 1FN se debe separar en 2 tablas para que los datos se puedan aprovechar de tal manera que no ocurra una redundancia al momento de consultar.

ID_Empleado Nombre_Empleado
123 456 987 Juan Roci Jos

ID_Empleado #_Telefono_Empleado
123 456 456 987 757 119 34 98 757 778 98 90 47 6 89 67 47 6 09 76

Tabla3. Relacin Empleado 1FN

Tabla4. Relacin Telef_Empleado

Instituto Tecnolgico Superior de la Montaa Curso ESPCIAL..Taller de base de datos Ulises Lpez Milln.Febrero-Junio-2014

Ejemplo2: Sea la siguiente relacin Libro.


Cdigo _Libro 1001 1004 1005 1006 1009

Ttulo_Libro Variable Compleja Visual Basic 5 Estadstica Oracle Fundamentos BD Introduccin a los sistemas de Bases de Datos

Nombre_Autor Murray Spiegel E. Petroustsos Murray Spiegel Nancy Greenberg Abraham Silberschatz Henry F. korth C. J. Date

Nombre_Editorial Mc. Graw Hill Anaya Mc. Graw Hill Oracle Corp. Mc. Graw Hill

Nombre_Lector Prez Gmez, Juan Ros Tern, Ana Roca Valdivia, Ren Garca Roque, Luis Prez Lpez, Pedro Aguilar Juarez, Jose Luis

Fecha_Devolucin 15/04/2013 17/04/2013 16/04/2013 20/04/2013 22/04/2013

1010

Prentice Hall

19/04/2013

Tabla5. Relacin Libro

Se observa que el Nombre_Autor y Nombre_Lector no estn atomizados, ya que hay varios datos, por ello se aplica la 1FN. Resultando las siguientes tablas.
Cdigo_ Libro 1001 1004 1005 1006 1009 1010

Ttulo_Libro Variable Compleja Visual Basic 5 Estadstica Oracle Fundamentos BD Introduccin a los sistemas de Bases de Datos

Nombre_Editorial Mc. Graw Hill Anaya Mc. Graw Hill Oracle Corp. Mc. Graw Hill Prentice Hall

AP Prez Ros Roca Garca Prez Aguilar

AM Gmez Tern Valdivia Roque Lpez Juarez

Nombre Juan Ana Ren Luis Pedro Jose Luis

Fecha_Devolucin 15/04/2013 17/04/2013 16/04/2013 20/04/2013 22/04/2013 19/04/2013

Tabla6. Relacin Libro 1FN Codigo_Libro 1001 1004 1005 1006 1009 1009 1010 Nombre_Autor Murray Spiegel E. Petroustsos Murray Spiegel Nancy Greenberg Abraham Silberschatz Henry F. korth C.J. Date

Tabla7. Relacin Codigo_Autor

Instituto Tecnolgico Superior de la Montaa Curso ESPCIAL..Taller de base de datos Ulises Lpez Milln.Febrero-Junio-2014

Ejemplo3: Observar la relacin Clientes


NIF 1 2 Apellidos Nombre Garcia Francisco Sanchez Luisa Direccin C/Marn 16 C/Teneras C/Ramorta CPost 33698 3485458 6554585 Poblacin Oviedo Cigales Bueu Provincia Asturias Valladolid Pontevedra

Tabla8. Datos de la relacin Clientes no esta en 1FN

La tabla anterior no esta en forma normal porque en el registro 2 (NIF) se tiene ms de un valor en los campos Direccin, CPost, Poblacin y Provincia. Para que cumpla con la 1FN. Se tiene que tener un solo valor que un campo de la tabla quedara de la siguiente forma.
NIF 1 2 2 Apellidos Nombre Garcia Francisco Sanchez Luisa Sanchez Luisa Direccin C/Marn 16 C/Tene C/Ramorta CPost 33698 3485458 6554585 Poblacin Oviedo Cigales Bueu Provincia Asturias Valladolid Pontevedra

Tabla9. Datos de clientes en 1FN

Segunda Forma Normal (2FN) Una tabla est en segunda forma normal o 2FN cuando est en 1FN y todo atributo que no pertenece a la clave primaria tiene una dependencia funcional de la clave completa y no de parte de ella. Luego, si la clave principal est formada por un solo atributo y ya est en 1FN, ya estar en 2FN.

En el ejemplo anterior, tanto los atributos Nombre como Apellidos dependen del atributo NIF. Se crea una nueva tabla que contiene los atributos: NIF, Direccin, CPost, Poblacin y Provincia, eliminndose de la tabla cliente los atributos Nombre y Apellidos, quedando las siguientes tablas:

Instituto Tecnolgico Superior de la Montaa Curso ESPCIAL..Taller de base de datos Ulises Lpez Milln.Febrero-Junio-2014

NIF 1 2 2

Apellidos Nombre Garcia Francisco Sanchez Luisa Sanchez Luisa

Tabla10. Datos de clientes en 2FN

NIF 1 2 2

Direccin C/Marn 16 C/Tene C/Ramorta

CPost 33698 3485458 6554585

Poblacin Oviedo Cigales Bueu

Provincia Asturias Valladolid Pontevedra

Tabla11. Atributos dependientes de NIF (2FN)

Tercera Forma Normal (3FN) Una tabla est en tercera forma normal o 3FN si est en 2FN y no existen atributos que no pertenezcan a la clave primaria que puedan ser conocidos mediante otro atributo que no forma parte de la clave primaria, es decir, no hay dependencias funcionales transitivas Observar la Tabla12.

NIF 1 2 2

Direccin C/Marn 16 C/Tene C/Ramorta

CPost 33698 3485458 6554585

Poblacin Oviedo Cigales Bueu

Provincia Asturias Valladolid Pontevedra

Tabla12. Relacion Clientes en 2FN

Los atributos: Direccin, Poblacin y Provincia dependen del atributo Cpost, que no forma parte de la clave primaria. Descomponiendo sin perdida una vez ms, obtenemos la siguiente tabla:
CPost 33698 3485458 6554585 Direccion C/Marn 16 C/Tene C/Ramorta Poblacion Oviedo Cigales Bueu Provincia Asturias Valladolid Pontevedra

Instituto Tecnolgico Superior de la Montaa Curso ESPCIAL..Taller de base de datos Ulises Lpez Milln.Febrero-Junio-2014
Tabla13. Relacion Clientes en 3FN

La normalizacin ms all de 3FN queda al juicio del diseador de la base de datos. A partir de esa forma normal, la eliminacin de dependencias funcionales pasa por la creacin de tablas con multitud de informacin redundante, con un posible aumento de tamao, por lo que se ha de optar entre una optimizacin del diseo y una optimizacin del tamao. Llegndose a diversas soluciones de compromiso entre ambos parmetros.

5.2 Caso practico CORRIDA DE TOROS Con base en las siguientes tablas realizar el proceso de normalizacin aplicando la 1FN, 2FN y 3FN.

TOREROS Id_torero Nombre Apellido_paterno Apellido_materno Apado Fecha_ini Padrino Num_orejas Num_rabos Puerta_grande Apoderado Direccion Telefono

CORRIDAS Num_orden Num_feria Ao_feria Num_toreros

PLAZA Nombre_plaza Pais Estado Ciudad Direccin Aforo

Tabla14. Tablas de la relacion Corrida de toros

Primera Forma Normal (1FN) Las tablas anteriores no tienen columnas u atributos repetidos en cada una de ellas pero no tienen una llave primaria o fornea para realizar la relacin entre ellas es por ello que no estn en 1FN.

Instituto Tecnolgico Superior de la Montaa Curso ESPCIAL..Taller de base de datos Ulises Lpez Milln.Febrero-Junio-2014

Agregar a cada una de ellas llaves primarias y forneas para establecer una relacin.
TOREROS
Id_torero (PK) Id_torero Nombre Apellido_paterno Apellido_materno Apado Fecha_ini Padrino Num_orejas Num_rabos Puerta_grande Apoderado Direccion Telefono Id_corrida (FK)

CORRIDAS
Id_corrida (PK) Num_orden Num_feria Nombre_feria Ao_feria Num_toreros Id_plaza (FK)

PLAZA
Id_plaza (PK) Nombre_plaza Pais Estado Ciudad Direccin Aforo

Tabla15. Relacion Corrida de toros en 1FN

Segunda Forma Normal (2FN) Las tablas que estn en 1FN hay atributos que no dependen de la llave primaria, aplicando la 2FN separamos aquellos atributos que no forman parte de la llave primaria de cada una de las tablas. En la tabla CORRIDAS hay atributos como Num_feria, Nombre_feria y Ao_feria que no dependen directamente de la llave primaria Id_corrida, por ello se genera otra tabla FERIAS para estos atributos, quedando finalmente la tabla CORRIDAS con los atributos: Id_corrida, Num_orden y

Num_toreros.
CORRIDAS
Id_corrida (PK) Num_orden Num_feria Nombre_feria Ao_feria Num_toreros Id_plaza (FK)

FERIAS
Num_feria (PK) Nombre_feria Ao_feria

CORRIDAS
Id_corrida (PK) Num_orden Num_toreros Num_feria(FK)

PLAZA Id_plaza Nombre_plaza Pais Estado Ciudad Direccin Aforo

Tabla16. Relacion Corrida de toros en 2FN

Instituto Tecnolgico Superior de la Montaa Curso ESPCIAL..Taller de base de datos Ulises Lpez Milln.Febrero-Junio-2014

En la tabla TOREROS tambin hay atributos que no corresponde a la llave primaria, obteniendo dos tablas resultantes denominadas PREMIOS y PRESNTACIONES:

TOREROS
Id_torero (PK) Nombre Apellido_paterno Apellido_materno Apodo Fecha_inicio Padrino Num_orejas Num_rabos Puerta_grande Apoderado Direccion Telefono Id_corrida (FK)

PREMIOS
Id_pre (PK) Num_orejas Num_rabos Apoderado

TOREROS
Id_torero (PK) Nombre Apellido_paterno Apellido_materno Apodo Direccion Telefono Id_presentacion(FK) Id_pre (FK)

PRESENTACIONES
Id_presentacion(PK) Fecha_inicio Padrino Puerta_grande

Tabla17. Continuacion Relacion Corrida de toros en 2FN

Tercera Forma Normal (3FN)


Como no se encontraron atributos que pudieran generar dependencia con otros la tercera forma normal queda de la forma siguiente: PLAZA
Id_plaza (PK) Nombre_plaza Pais Estado Ciudad Direccin Aforo

CORRIDAS
Id_corrida(PK) Num_orden Num_toreros Num_feria

TOREROS
Id_torero(PK) Nombre Apellido_paterno Apellido_materno Apado Direccion Telefono Id_presentacion(FK) Id_pre(FK)

PRESENTACIONES FERIAS
Num_feria(PK) Nombre_feria Ao_feria Id_presentacion(PK) Fecha_inicio Padrino Puerta_grande

PREMIOS
Id_pre(PK) Num_orejas Num_rabos Apoderado

Tabla18. Relacion Corrida de toros en 3FN

También podría gustarte