Está en la página 1de 8
1. EJERCICIOS DE NORMALIZACION: 1, A través del siguiente ejercicio se intenta afirmar las conacimientos de normalizacién con un ejempla simplificado de una base de datos para una pequefia biblioteca. 1001 lableCompleja | ntutray Siegel ecraye Hl Pérez Garver, aan | 15/04/2014, To0d | Visual Basie EPetroustses Anaya Riss erin, Ana | 17/04/2014 1005___| Extadinica ‘Murray Slewel MeGrawe Hl aca, René i6/oa/toia 1006 | Oracleuniversity | Nancy Greenterg y Priva | Oracle Corp. ‘Garcia Roque, tuis | 20/04/2014 Nathan 1007___| Cippers.03 Ramalhe MeGrave Hl Parez Gémes, an | 18/0472004 Esta tabla no cumple el requisito de la Primera Forma Normal (INF) de sdlo tener campos atémicos, pues el nombre del lector es un campo que puede (y conviene) descomponerse en apellide paterno, apellide materna y nombres, Tal camo se muestra en la siguiente tabla. INF MeGrave Hill ‘Anava MeGrave Hil ‘Oracle Corp, ‘Oracle Gorm Como se puede ver, hay cierta redundancia caracteristica de INF. La Segunda Forma Normal (2NF) pide que no existan dependencias parciales o dicho de otra manera, todos los atributos no clave deben depender por completo de Ia clave primaria, Actualmente en nuestra tabla tenemos varias dependencias parciales si consideramos como atributo clave el cédigo del libro. Por ejemplo, el titulo es completamente identificado por el cédigo del libro, pero el nombre del lector en realidad no tiene dependencia de este cédigo, por tanto estos datos deben ser trasladados a otra tabla. 2NF ‘Gracie University ‘Gipper Son La nueva tabla s6lo contendrd datos del lector, Pacer Gomer Tee 8] 8/8) & El gee ise Roce avcia Regu Hemos creado una tabla para contener los datos del lector y también tuvimos que ‘crear la columna CodLector para identificar univecamente a cada uno, Sin embargo, esta nueva disposicién de la base de datos necesita que exista otra tabla para mantener la informacién de qué libros estan prestades a qué lectores. Esta tabla se muestra a ‘continuacién: Para la Tercera Forma Normal (3NF) la relacién debe estar en 2NF y ademds los atributos no clave deben ser mutuamente independientes y dependientes por completo de la clave primaria, También recordemos que dijimos que esto significa que las columnas en la tabla deben contener solamente informacién sobre la entidad definida por la clave primaria y, por tanto, as columnas en la tabla deben contener datos acerca de una sola cosa, En nuestro ejemplo en 2NF, la primera tabla conserva informacién acerca del libro, las, autores y editariales, por lo que debemos crear nuevas tablas para satisfacer los requisites de BNF. SNF 1001 ‘Variable compleja. Tous Wisual Basic 5 1005 Estadistica TO06 Grace University 1007, Clipper $01 ‘Nancy Greenberg Priya Nathan ‘McGraw Hill ‘Anaya ‘Aunque hemos creado nuevas tablas para que cada una tenga sélo informacién acerca de una entidad, también hemos perdide la informacién acerea de qué autor ha escrito qué libro y las editorials correspondientes, por lo que debemas crear otras tablas que relacionen cada libro con sus autores y editoriales. Yel resto de las tablas no necesitan modificacién. sor | Pérez Gémez — | Juan 502 | Rios Teri ‘Ana 303 | Roca René 304 | Garda Roque Luis 15/04/2014 17/04/2014 16/04/2014 1006 504 20/04/2014 1007 S01 18/04/2014 2. Un dato sin normalizar no cumple con ninguna regla de normalizacién. Para explicar con un ejemplo en qué consiste cada una de las reglas, varios a considerar los datos de la siguiente tabla. zor | yore | 101 Martin | Cajamarca | 3786 ed 3 35.00 soi | aayanna | ior Marin | Copmara| 40i_| Raqueta | 6 | 65,00 aor | wayne | 101 Marin | Gopmarca| 9182 | Page = 45 aoa | sone [107 ‘eran | time soe | Poet a 5,00) aos | yan ry Pedro: Piura ao | Raqueta |? 5,00 aes | ena | no Pedio: Piura aii Funda z 70,00 INF ‘Al examinar estos registros, podemos darnos cuenta qué contienen un grupo repetido para NUM_ART, NOM_ART, CANT y PRECIO. La 1FN prohibe los grupos repetides, por lo tanto tenemos que convertir ala primera forma normal. Las pasos a seguir son: & Tenemos que eliminar los grupos repetidos, } Tenemos que crear una nueva tabla con la PK de la tabla base y el grupo. repetido. Los registros quedan ahora conformades en dos tablas que llamaremos érdenes y articulas_ordenes Ordenes B01 yon 108 Martin ‘Caraeae Bo Baie 107, Herman coro 3305, mea 110) Pedko ‘Marocay 2NF Ahora procederemos a aplicar la segunda formal normal, es decir, tenemos que eliminar cualquier columna no lave que no dependa de la llave primaria de la tabla. Los pasos aseguirson: Determinar cudles columnas que no son llave no dependen de la llave primaria de la tabla. & Eliminar esas columnasde la tabla base. © Crear una segunda tabla con esas columnas y la(s) columna(s) de la PK de la cual dependen. La tabla érdenes estd en 2FN, Cualquier valer unico de ID_ORDEN determina un sélo valor para cada columna. Por lo tanto, todas las columnas son dependientes de la llave primaria ID_ORDEN. Por su parte, la tabla articulas_ordenes no se encuentra en 2EN ya qué las columnas PRECIO y NOM_ART son dependientes de NUM_ART, pero no son dependientes de ID_ORDEN. Lo que haremos a continuacién es eliminar estas columnas de la tabla articulos_ordenes y crear una tabla artieulos con dichas columnas y la lave primaria de la que dependen. Las tablas quedan ahora de la siguiente manera. Articulos_ordenes 20h 3785, 2301 on 301 2 Artoutos 3NF La tercera forma normal nos dice que tenemos que eliminar cualquier columna no llave que sea dependiente de otra columna no llave. Las pasos a seguir son: & Determinar las columnas que son dependientes de otra columna nollave. ad Eliminar esas columnas de la tabla base. Crear una segunda tabla con esas columnas y con la columna ne llave de la cual son dependientes. Al observar las tablas que hemos creado, nos damos cuenta que tanto la tabla ARTICULOS, como la tabla articulos_ordenes se encuentran en 3FN. Sin embargo la tabla ordenes no lo estd, ya que NOM_CLIENTE y PROVINCIA son dependientes de ID_CLIENTE, y esta columna no esa llave primaria. Para normalizar esta tabla, moveremos las columnas no lave y la columna lave de la cual dependen dentro de una nueva tabla clientes. Las nuevas tablas clientes y érdenes se muestran a continuacién, Ordenes 2300 25/0/11 101 aoa | 25/00 17 303 | _arreasan nn0 Chientes 107 Herman Uma 10 Pedro Phuc Por lo tanto lla base de datos queda de la siguiente manera: Ordenes (id_orden, fecha, id_cliente) Clientes (id_cliente, nom_ciiente, estado) Articulos (num_art, nom_art, precio) Articulos_ordenes (id_orden, num_art, cant) 3. Normalizacion de la tabla de estudiantes: NF Las tablas deben tener solo das dimensiones. Dado que los estudiantes tienen varias clases, estas clases deben ser listadas en una tabla separada. Los campos Clasel, Clase?, Clase3 enlos registros anteriores son indicios de problemas de disef. Las hojas de cdleulo: suelen usar la tercera dimensién, pera las tablas no deben. Otra forma de ver este problema es con uno-a-muchos, Creamos otra tabla en la primera forma normal eliminanda el grupo de repeticién (clase) como se muestra én lo siguiente: [wT aa oz Feonoma 2NF Tomamos en cuenta los multiples valores para el campo Clase por cada estudiante en la tabla anterior. a ‘Aruitectra 1022 Gestiin 1022 Econarala ana Dibulo ana Basede Datos ana "An Matertice aNF Eliminar los datos que no dependeen de la llave, salon (salon/grupo asignado al asesor} es funcionalmente dependiente del atribute titular. La solucién es mover dicho atributo de la tabla Alumnos a la tabla de Facultad: 3022 S¢, Uamoctanta e201 4123 Sr, Rodeiguer 16202 Seam ‘W201 ‘Se Rodrquer Tee @ ll, CONCLUSION La normalizacién es una técnica que se ha desarrollado para obtener estructuras de dates eficientes, garantizando un buen disefio légico de la base de datos. Es decir, se utiliza para mejorar el esquema, de modo que éste satisfaga ciertas restricciones que eviten la duplicidad de datos, y garantiza que el esquema resultante esté mds prdximo al modelo de la ‘empresa, sea consistente, con la minima redundancia y la maxima estabilidad. La normalizacién es una ayuda muy util en el proceso de disefto de las bases de datos, pero convione sefialar que no es una panacea. Hay que tener en cuenta que las formas normales no son prescripciones para la creacién de un modelo de datos “correcto”. Un modelo de dates podria llegar a estar perfectamente normalizade, pero podria proporcionar las respuestas tan despacio y de forma tan complicada que el sistema de base de datos construido sabre él resulte inoperative. No hay que olvidar que al descomponer una relacién penalizamos las consultas, provocando una pérdida de eficiencia en las mismas. Aunque, en general, se aconseja llevar los ‘esquemas relacionales al menos a 3FN, existen ciertos casos en los que, una ver realizada la descomposicién, exigencias de eficiencia muy estrictas obligan a llevar a cabo el proceso Werso, es decir, una desnormalizackin, combinando las relaciones hasta dejarlas en formas normales anteriores. Por lo tanto, hay que poner en la balanza hasta dénde conviene normalizar para que el resultado sea un modelo de datos eficiente y efective, aunque no cabe duda que con las tres primeras formas normales las probabilidades de obtener este resultado son muy altas.

También podría gustarte