Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Febrero-Junio-2014
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
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
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
Instituto Tecnolgico Superior de la Montaa Curso ESPCIAL..Taller de base de datos Ulises Lpez Milln.Febrero-Junio-2014
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
1010
Prentice Hall
19/04/2013
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
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
Instituto Tecnolgico Superior de la Montaa Curso ESPCIAL..Taller de base de datos Ulises Lpez Milln.Febrero-Junio-2014
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
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
NIF 1 2 2
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
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
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
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)
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
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