Normalizando la BD: primera forma normal (1FN) Se podra decir que al aplicarla hay que asegurarse de que: No se permiten vectores de campos en una columna Un ejemplo de esto es cuando en un campo de texto metemos varios valores del mismo dominio, como por ejemplo tres nmeros de telfono, o dos direcciones e-mail. Lo tpico en estos casos es separar los datos por comas, espacios u otro carcter y despus procesarlo mediante la aplicacin. Para evitar esto hay que definir una nueva tabla que tendr el identificador de la tabla de la que parte y el campo multivaluado, haciendo juntos de clave nica compuesta (se puede definir otra incremental si se desea, pero el conjunto de los otros dos campos tiene que ser nico). Adems en esta tabla se puede agregar campos que ayuden a describir el tipo de registro. Ejemplo Incorrecto clientes IDCliente Nombre Telefono 45 Francisco 444444444 275 Miguel 555555555,666666666 Correcto
Mg. Orleans Moiss Glvez Tapia - Gestin de Datos I
2 clientes IDCliente Nombre 45 Francisco 275 Miguel telefonos_cliente IDCliente Telefono 45 444444444 275 555555555 275 666666666 No se permiten grupos repetidos en varias columnas Esto es una variante de lo anterior: separamos los campos de un mismo dominio en varias columnas, haciendo un grupo difcilmente procesable a la hora de consultarlo. En el ejemplo anterior sera tener el campo telefono1, telefono2 y as. Es evidente que este fallo del diseo es incluso peor que el anterior pues habr muchos campos nulos, y en caso de necesitar ms tendramos que redimensionar la tabla con un nuevo campo (telefono3). Pero la solucin es sencilla: la misma que en el anterior caso. Ejemplo Incorrecto clientes IDCliente Nombre Telefono Telefono2 Telefono3 45 Francisco 444444444 NULL NULL 275 Miguel 555555555 666666666 NULL Correcto clientes IDCliente Nombre 45 Francisco 275 Miguel telefonos_cliente IDCliente Telefono 45 444444444 275 555555555 275 666666666 Normalizando la BD: segunda forma normal (2FN) Una tabla est en segunda forma normal siempre que est en primera forma normal y todos sus atributos (campos) dependan totalmente de la clave candidata sin ser parte de ella. Viene a ser que, si un campo de la tabla no depende totalmente de una clave nica (que pueden ser compuestas), debe sacarse fuera con la parte de la clave principal de la que es dependiente.
Mg. Orleans Moiss Glvez Tapia - Gestin de Datos I
3 Ejemplo Incorrecto lineas_pedido IDCliente IDProducto Cantidad Nombre_producto 29 42 1 Zapatillas deportivas de tenis 46 9 5 Baln reglamentario de baloncesto 204 42 1 Zapatillas deportivas de tenis 144 10 1 Zapatillas deportivas de rugby Correcto lineas_pedido IDCliente IDProducto Cantidad 29 42 1 46 9 5 204 42 1 144 10 1 productos IDProducto Nombre_producto 9 Baln reglamentario de baloncesto 10 Zapatillas deportivas de rugby 42 Zapatillas deportivas de tenis Normalizando la BD: tercera forma normal (3FN) Una tabla est en tercera forma normal siempre que est en segunda forma normal (y por consiguiente en primera) y todos sus campos no primarios (campos que no forman parte de una clave candidata) dependen nicamente de la clave candidata. Suena como la segunda forma normal, pero es muy distinta: ningn campo que no sea parte de la clave candidata puede depender de otro campo que no sea la clave candidata.
5 RESOLVER LOS SIGUIENTES EJERCICIOS 1. Se tiene una relacin del REPORTE_MATRICULA (cdigo_alumno, nombre_alumno, especialidad, cdigo_curso, nombre_curso, nombre_docente, oficina, seccin) se pide aplicar las reglas de normalizacin llegando hasta las 3FN. Cdigo/ alumno Nombre/ alumno Especialidad Cdigo/ curso Nombre_curso Nombre/ docente Oficina curso 382145A Luis Zuloaga Industrial MA123 Matemtica 2 Carlos Arambulo CB-214 U 382145A Luis Zuloaga Industrial QU514 Fsica Qumica Petra Rondinel CB-110 U 382145A Luis Zuloaga Industrial AU521 Descriptiva Vctor Moncada CB-120 W 360247k Ral Rojas Sistemas PA714 Investigacin 1 Cesar Fernadez SC-220 V 360247k Ral Rojas Sistemas MA123 Matemtica 2 Carlos Arambulo CB-214 V 360247k Ral Rojas Sistemas AU511 Dibujo Vctor Moncada CB-120 U
2. Se presenta una base de datos de una biblioteca, aplicar las reglas de normalizacin simplificando hasta la tercera forma normal. Prestamos_libro (codLibro, Titulo, Autor, Editorial, NombreLector, Fechadev) codLibro Titulo Autor Editorial nombreLector Fechadev 1001 Variable compleja Murray Spiegel McGraw Hill Prez Gmez, Juan 15/04/2005 1004 Visual Basic 5 E. Petroustsos Anaya Ros Tern, Ana 17/04/2005 1005 Estadstica Murray Spiegel McGraw Hill Roca, Ren 16/04/2005 1006 Oracle University Nancy Greenberg y Priya Nathan Oracle Corp. Garca Roque, Luis 20/04/2005 1007 Clipper 5.01 Ramalho McGraw Hill Prez Gmez, Juan 18/04/2005
3. En la siguiente tabla REPORTE_VENTA, usted debe analizar toda la informacin disponible y aplicar el proceso de normalizacin, hasta llegar a la Tercera Forma Normal. Se pide realizar la respectiva justificacin detallada de cada uno de los pasos que conduzcan al resultado final. REPORTE_VENTA:
Mg. Orleans Moiss Glvez Tapia - Gestin de Datos I
6 4. En la siguiente tabla ALUMNOS, usted debe analizar toda la informacin disponible y aplicar el proceso de normalizacin, hasta llegar a la Tercera Forma Normal. Se pide realizar la respectiva justificacin detallada de cada uno de los pasos que conduzcan al resultado final. N alumno Tutor Despacho-Tut Clase1 Clase2 Clase3 1022 Garca 412 101-07 143-01 159-02 4123 Daz 216 201-01 211-02 214-01
5. En la siguiente tabla PRESTAMO_LIBROS, usted debe analizar toda la informacin disponible y aplicar el proceso de normalizacin, hasta llegar a la Tercera Forma Normal. Se pide realizar la respectiva justificacin detallada de cada uno de los pasos que conduzcan al resultado final.