Download - 2 Normalizacion

Transcript
Page 1: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

CURSO: BASE DE DATOS Y PROGRAMACIÓN VISUAL

Docente: Ing. Joseph Ballon Alvarez

Page 2: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Normalización de Datos

Page 3: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

• Concepto de Normalización

• Formas Normales

• Caso de aplicación

Temas

Page 4: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

La normalización es un proceso quepretende conseguir tablas con unaestructura óptima y eficaz. El procesode normalización está basado enlograr la independencia de los datosrespecto a las aplicaciones que losusan. Evita la redundancia de datos.

Concepto:

Page 5: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Normalización• Valida y mejora el diseño lógico que satisface

ciertas restricciones, la cual evita laduplicación innecesaria de datos.

• Proceso de descomposición de relacionescon anomalías para producir relaciones bienestructuradas y más pequeñas.

• No siempre provoca el mejor rendimiento enlos RDBMS.

Page 6: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Relaciones bien estructuradas

• Contiene mínima redundancia y permite quelos usuarios añadan, eliminen y actualicenregistros (filas) sin causar inconsistencias.

• La meta es evitar anomalías– Anomalías de inserción: la adición de nuevas

filas obliga a los usuarios a crear datosduplicados.

– Anomalías de eliminación: puede causar lapérdida de datos que deben ser requeridos paraotras filas futuras.

– Anomalías de modificación: los datoscambiados obligan a cambiar otros causados porla duplicación.

Page 7: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Page 8: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Claves y Dependencia Funcional

• El valor de un atributo A (determinante)

determina el valor de otro atributo B

A B

• Clave Candidata:

– Unico identificador. Una de las claves que llega ha

convertirse en la clave primaria.

• Ej. Tanto el codigo de empleado como DNI ambas son

claves candidatas de la entidad Empleado.

• Cada campo no clave es funcionalmente dependiente de

cada clave candidata.

Page 9: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Normalización

RUC___________ Razón Social_______

Dirección_________________Teléfono____

Cod Artículo Descripción Artículo Cant Prec.Unit

RUC 30001

Nro 1240001

Prec.Tot.

Total Factura

Fecha / /

Page 10: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Atributos de la Entidad

Cod Artículo Descripción Artículo Cant Prec.Unit Prec.Tot.

RUC Cliente Razón Social Dirección Total FechaNro Factura

Page 11: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Primera Forma Normal

• Eliminar atributos multivaluados (gruposrepetitivos).

• Cada atributo debe ser atómico.

Page 12: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Primera Forma Normal 1FN

Grupos Repetitivos y valores atómicos

RUC: 0000125 Razón Social: LIBRERIA PAZ

Dirección: Arica 325. Lince Telefono: 553432

Cod Artículo Descripción Artículo Cant Prec.Unit

010 Lapicero Azul punta fina 100 2.50

753 Cuaderno rayado A4 200 10.00

RUC 30001

Nro 1240001

Prec.Tot.

250.00

2000.00

2250.00Total FacturaFecha 20/08/2007

Nro_Factura RUC_Cliente Razón_Social Direccion_Cliente Total Fecha Cod_Articulo Desc_Articulo Cant Prec_Unitario Prec_Total

1240001 0000125 LIBRERIA PAZ Arica 325. Lince 2250 20/08/2007 010 Lapicero Azul punta fina 100 2.5 250

1240001 0000125 LIBRERIA PAZ Arica 325. Lince 2250 20/08/2007 753 Cuaderno rayado A4 200 10 2000

Documento Factura visto en una única Tabla

Page 13: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Resultados de la Primera Forma Normal

Nro_Factura RUC_Cliente Razón Social Direccion_Cliente Total Fecha

1240001 0000125 LIBRERIA PAZ Arica 325. Lince 2250 20/08/2007

Cod Artículo Descripción Artículo Cant Prec.Unit Prec.Tot.Nro Factura

RUC Cliente Razón Social Dirección Total FechaNro Factura

Grupo Repetitivo

Grupo No Repetitivo

Nro_Factura Cod_Articulo Desc_Articulo Cant Prec_Unitario Prec_Total

1240001 010 Lapicero Azul punta fina 100 2.5 250

1240001 753 Cuaderno rayado A4 200 10 2000

Page 14: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Segunda Forma Normal

• Dependencias Funcionales

–Cada atributo no clave debe estar

determinado por toda la clave y no parte de

esta.

–Separar dependencias funcionales

parciales.

Page 15: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Segunda Forma Normal

Dependencias Funcionales

Cod Artículo Descripción Artículo Cant Prec.Unit Prec.Tot.Nro Factura

RUC Cliente Razón Social Dirección Total FechaNro Factura

Grupo Repetitivo

Grupo No Repetitivo

Dependencias Totales

Dependencias Parciales

Page 16: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Resultados de la Segunda Forma Normal

Nro_Factura RUC_Cliente Razón Social Direccion_Cliente Total Fecha

1240001 0000125 LIBRERIA PAZ Arica 325. Lince 2250 20/08/2007

Nro_Factura Cod_Articulo Cant Prec_Total

1240001 010 100 250

1240001 753 200 2000

Cod Artículo Descripción Artículo

Cant

Prec.Unit

Prec.Tot.Nro Factura

RUC Cliente Razón Social Dirección Total FechaNro Factura

Cod Artículo

Cod_Articulo Desc_Articulo Prec_Unitario

010 Lapicero Azul punta fina 2.5

753 Cuaderno rayado A4 10

Page 17: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Tercera Forma Normal

• Dependencias Transitivas

– Un atributo no clave determina

funcionalmente un segundo, el cual determina

a un tercero.

Page 18: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Tercera Forma Normal

Dependencias Transitivas

Cod Artículo Descripción Artículo

Cant

Prec.Unit

Prec.Tot.Nro Factura

RUC Cliente Razón Social Dirección Total FechaNro Factura

Cod Artículo

Dependencias Transitivas

Page 19: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Resultados de la Tercera Forma Normal

RUC_Cliente Razón Social Direccion_Cliente

0000125 LIBRERIA PAZ Arica 325. Lince

Nro_Factura Cod_Articulo Cant Prec_Total

1240001 010 100 250

1240001 753 200 2000

Cod Artículo Descripción Artículo

Cant

Prec.Unit

Prec.Tot.Nro Factura

RUC Cliente Razón Social Dirección Total FechaNro Factura

Cod Artículo

RUC Cliente

CLIENTE FACTURA

ARTICULO

DETALLE_FACTURA

Cod_Articulo Desc_Articulo Prec_Unitario

010 Lapicero Azul punta fina 2.5

753 Cuaderno rayado A4 10

Nro_Factura RUC_Cliente Total Fecha

1240001 0000125 2250 20/08/2007

Page 20: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Diagrama Entidad Relación

Page 21: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Forma Normal Boyce-Codd

• Una relación esta en la Forma Normal Boyce-

Codd si y solo si cada atributo determinante en

una relación es una llave candidata.

Page 22: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Forma Normal de Boyce-Codd

• Supuesto:– Cada Producto tiene un único Vendedor

Cliente

Cod Producto

Ultimo Precio Venta

Vendedor

Cod Cliente

Cod Vendedor

Producto

Cliente_Producto

Page 23: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Forma Normal de Boyce-Codd

Cod Vendedor Cod Producto Ultimo Precio VentaCod Cliente

• Cod Producto y el Ultimo Precio Venta son dependientes de lallave primaria.

• Existe una segunda dependencia del Cod Producto al CodVendedor, derivada de la exclusividad que tiene cada Vendedorsobre el Producto.

• Por lo tanto el Cod Producto es un atributo determinante capazde ser parte de la llave primaria, pero ponerlo conjuntamentecon el Cod de Vendedor seria redundante.

Page 24: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Forma Normal de Boyce-Codd

Cod Producto Cod Vendedor Ultimo Precio VentaCod Cliente

• Propuesta de solución– Intercambiar los atributos Cod Vendedor por Cod

Producto, quedando la relación pendiente de pasarpor la Segunda Forma Normal.

Dependencia Parcial

Page 25: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Forma Normal de Boyce-Codd

Cod Producto Ultimo Precio VentaCod Cliente

• Aplicando la Segunda Forma Normal se obtiene

Cod VendedorCod Producto

Page 26: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Cuarta Forma Normal

• Se aplica a partir de la Forma Normal de

Boyce-Codd y no contiene dependencias

multivaluadas.

Page 27: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Cuarta Forma Normal

• Dependencias Multivaluadas son:

– Dependencias que existen cuando hay por

lo menos 3 atributos A, B, C

• B -> A,

• C -> A, pero

• B es independiente de C.

Page 28: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Cuarta Forma Normal

Curso (A) Profesor (B) Texto (C)

Administración

García

Arce

Pérez

Drucker

Peters

Finanzas MéndezJones

Chang

Page 29: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Cuarta Forma Normal

Curso (A) Profesor (B) Texto (C)

Administración García Drucker

Administración García Peters

Administración Arce Drucker

Administración Arce Peters

Administración Pérez Drucker

Administración Pérez Peters

Finanzas Méndez Jones

Finanzas Méndez Chang

Desarrollo

Page 30: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Cuarta Forma Normal

Curso (A) Profesor (B)

Administración García

Administración Arce

Administración Pérez

Finanzas Méndez

Curso (A) Texto (C)

Administración Drucker

Administración Peters

Finanzas JonesFinanzas Chang

Profesor

Texto

Page 31: 2 Normalizacion

Base de datos y programación visual

Docente: Ing. Joseph Ballon Alvarez

Una Tabla esta en Quinta Forma Normal (5FN) o Forma

Normal de Proyección-Unión si está en 4FN y las únicas

dependencias que existen son las dependencias de

unión de una Tabla con sus proyecciones relacionándose

entre las distintas proyecciones mediante la clave

primaria o cualquier clave alterna. La 5FN se emplea

cuando en una misma Tabla tenemos mucha información

redundante, con pocos atributos o cuando una Tabla

posee una gran cantidad de atributos y se hace por ello

inmanejable.

Quinta Forma Normal