Ej Normalizacion Juan Glz

7,180 views

Published on

Un sencillo ejemplo de normalizacion paso por paso

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
7,180
On SlideShare
0
From Embeds
0
Number of Embeds
843
Actions
Shares
0
Downloads
312
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Ej Normalizacion Juan Glz

  1. 1. Ejemplo de normalización<br />Juan Francisco González Reyes<br />Instituto Tecnológico Superior de Lerdo<br />ITSL<br />
  2. 2. PROBLEMA<br />Se debe crear una BD para un negocio dedicado a la venta de Software y Hardware<br />La información relevante de las tablas debe ser sobre productos, clientes, facturas, inventario y ventas del día<br />
  3. 3. PASO CERO<br />
  4. 4. PROBLEMA<br />Se comienza con una colección de atributos necesarios para la administración del negocio<br />El proceso de normalización consiste en comprobar en secuencia si el esquema original está en 1FN, 2FN y 3FN, analizando las dependencias funcionales en cada paso.<br />
  5. 5. 1FN (Primer Forma Normal)<br />
  6. 6. 1FN<br />Una tabla está en 1FN si sus atributos contienen valores atómicos. <br />En el ejemplo, podemos ver que los atributos “Edad” ó “Fecha_nac” apuntan a lo mismo y puede ser eliminado alguno de los dos sin repercutir en la información de la BD.<br />Pasa igual con “Estado Civil”: No es de carácter reelevante saber si el cliente está casado o soltero.<br />
  7. 7. 1FN<br />TABLA EN PRIMERA FORMA NORMAL CON ATRIBUTOS INECESARIOS ELIMINADOS:<br />
  8. 8. 2FN (Segunda Forma Normal)<br />
  9. 9. 2FN<br />Una relación está en segunda forma normal si, y sólo si:<br />Está en 1FN.<br />Todos sus atributos que no son de la clave principal tienen dependencia funcional completa respecto de todas las claves existentes en el esquema.<br />En otras palabras, se deben eliminar los atributos que pueden repetir registros como “Proveedor” o “Nombre” y crear otra tabla para cada tipo de entidad.<br />
  10. 10. 2FN<br />En nuestro caso quedarán 2 tablas resultantes (Artículos y Clientes) identificadas en 1 tabla “Ventas”<br />Nota: cuando se separan atributos, se debe crear una referencia o un id del atributo (ej. Id_cliente)<br />Tabla Artículos<br />Tabla Ventas<br />Tabla Clientes<br />
  11. 11. 3FN (Tercera Forma Normal)<br />
  12. 12. 3FN<br />Una relación está en tercera forma normal si, y sólo si:<br />Está en 2FN.<br />Cada atributo que no está incluido en la clave primaria no depende transitivamente de la clave primaria.<br />Por lo tanto, a partir de un esquema en 2FN, tenemos que buscar dependencias funcionales entre atributos que no estén en la clave<br />
  13. 13. 3FN<br />En nuestro ejemplo, seguimos teniendo el problema de que un proveedor puede repetirse en la tabla “artículos” y por tanto depende transitivamente de la clave primaria.<br />Igual pasa con “Monto” y “Fecha” de la tabla Ventas.<br />Tabla Artículos<br />Tabla Ventas<br />Tabla Clientes<br />
  14. 14. 3FN<br />Por tanto, nuestro ejercicio terminará con 5 tablas resultantes normalizadas:<br />Tabla Artículos<br />Tabla Proveedores<br />Tabla Clientes<br />Tabla Ventas<br />Tabla Facturas<br />

×