Diseño Relacional: Formas Normales
Diseño Relacional: Formas Normales
18 de abril de 2023
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 1 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales
Topics
1 Introducción
2 Dependencias funcionales
6 Bibliografía
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 2 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Introducción
1 Introducción
2 Dependencias funcionales
6 Bibliografía
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 3 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Introducción
Introducción
[ELM16 14.1]
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 4 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Dependencias funcionales
1 Introducción
2 Dependencias funcionales
6 Bibliografía
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 5 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Dependencias funcionales
Dependencia funcional
Definición [ELM16 14.2.1; SILB19 7.2.2]
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 6 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
1 Introducción
2 Dependencias funcionales
6 Bibliografía
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 7 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Formas normales
Las formas normales son una serie de estructuras con las que un
esquema de base de datos puede cumplir ó no.
Las formas normales clásicas son:
Primera forma normal (1FN) (E. Codd, 1970)
Segunda forma normal (2FN) (E. Codd, 1971)
Tercera forma normal (3FN) (E. Codd, 1971)
Forma normal Boyce-Codd (FNBC) (R. Boyce E. Codd, 1974)
Cuarta forma normal (4FN) (R. Fagin, 1977)
Quinta forma normal (5FN) (R. Fagin, 1979)
Cada forma normal es más fuerte que las anteriores –en el orden
en que las hemos introducido–. Entonces:
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 8 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Formas normales
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 9 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 10 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Situación:
nombre_profesor mail
Juan Gómez {[email protected], [email protected]}
Roberta Casas {[email protected], [email protected]}
Irene Adler {[email protected]}
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 11 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 12 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 13 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 14 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 15 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Hipótesis: Todos los torneos son por eliminación, de manera que 2 tenistas pueden enfrentarse 1 vez como máximo por torneo.
Descomposición
Torneos(nombre_torneo, ciudad, país)
Partidos(nombre_torneo, año, tenista1, tenista2, set, ronda, punt1, punt2)
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 17 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
TORNEOS
nombre_torneo ciudad país
Roland Garros París Francia
Masters de Madrid Madrid España
PARTIDOS
nombre_torneo año tenista1 tenista2 ronda set punt1 punt2
Roland Garros 2016 A. Murray S. Wawrinka 2-final 1 6 4
Roland Garros 2016 A. Murray S. Wawrinka 2-final 2 6 2
Roland Garros 2016 A. Murray S. Wawrinka 2-final 3 4 6
Roland Garros 2016 A. Murray S. Wawrinka 2-final 4 6 2
Masters de Madrid 2015 R. Federer R. Nadal 4-final 1 3 6
Masters de Madrid 2015 R. Federer R. Nadal 4-final 2 1 6
Roland Garros 2016 N. Djokovic A. Murray Final 1 6 3
Roland Garros 2016 N. Djokovic A. Murray Final 2 1 6
Roland Garros 2016 N. Djokovic A. Murray Final 3 6 2
Roland Garros 2016 N. Djokovic A. Murray Final 4 6 4
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 18 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Descomposición
Definición
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 19 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Descomposición
Propiedades
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 20 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Descomposición
Propiedades
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 21 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 22 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
VENTAS
nro_factura cliente nro_item cod_producto nombre_producto cantidad precio_unit
0003-45821 Lionel Pessari 1 249 Suprabond 500mg 2 87.00
0003-45821 Lionel Pessari 2 230 Tersuave azul 4l 1 270.00
0003-45821 Lionel Pessari 3 115 Brocha 5cm 2 90.00
0003-45822 Claudia Serrano 1 258 Alba p/Exteriores 3l 2 225.00
0003-45822 Claudia Serrano 2 116 Brocha 10cm 2 130.00
0003-45823 Claudia Serrano 1 330 Cetol 2l 1 315.00
Descomposición a 2FN
ClienteFactura(nro_factura, cliente)
DetalleFactura(nro_factura, nro_item, cod_producto, nombre_producto,
cantidad, precio_unit)
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 23 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
CLIENTE FACTURA
nro_factura cliente
0003-45821 Lionel Pessari
0003-45822 Claudia Serrano
DETALLE FACTURA
nro_factura nro_item cod_producto nombre_producto cantidad precio_unit
0003-45821 1 249 Suprabond 500mg 2 87.00
0003-45821 2 230 Tersuave azul 4l 1 270.00
0003-45821 3 115 Brocha 5cm 2 90.00
0003-45822 1 258 Alba p/Exteriores 3l 2 225.00
0003-45822 2 116 Brocha 10cm 2 130.00
0003-45823 1 330 Cetol 2l 1 315.00
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 24 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 25 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
PK = {nro_factura, nro_item}
¿Cómo se resuelve la situación?
DetalleFactura(nro_factura nro_item cod_producto cantidad
precio_unit)
Productos(cod_producto, nombre_producto)
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 26 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 27 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 28 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 30 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
INSCRIPCIONES
alumno profesor
Dante Micelli Edmundo Ribeiro
Dante Micelli José Cestoni
Dante Micelli Pedro González
Alberto Deheza José Cestoni
Alberto Deheza Viviana Díaz
Carla Hernández Edmundo Ribeiro
Carla Hernández Pedro González
Carla Hernández José Cestoni
Leticia Humboldt Héctor Larraza
Leticia Humboldt Viviana Díaz
CURSOS
materia profesor
Zoología Edmundo Ribeiro
Botánica José Cestoni
Anatomía General I Pedro González
Zoología Viviana Díaz
Botánica Héctor Larraza
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 31 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Formas normales: 1FN, 2FN, 3FN, FNBC
PARTIDOS
nombre_torneo año tenista1 tenista2 set punt1 punt2
Roland Garros 2016 A. Murray S. Wawrinka 1 6 4
Roland Garros 2016 A. Murray S. Wawrinka 2 6 2
Roland Garros 2016 A. Murray S. Wawrinka 3 4 6
Roland Garros 2016 A. Murray S. Wawrinka 4 6 2
Masters de Madrid 2015 R. Federer R. Nadal 1 3 6
Masters de Madrid 2015 R. Federer R. Nadal 2 1 6
Roland Garros 2016 N. Djokovic A. Murray 1 6 3
Roland Garros 2016 N. Djokovic A. Murray 2 1 6
Roland Garros 2016 N. Djokovic A. Murray 3 6 2
Roland Garros 2016 N. Djokovic A. Murray 4 6 4
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 33 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Dependencias multivaluadas y 4FN
1 Introducción
2 Dependencias funcionales
6 Bibliografía
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 34 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Dependencias multivaluadas y 4FN
Dependencia multivaluada
Situación
1 M N M N M
Cliente realiza Compra incluye Promoción incluye Producto
Nombre Descripción
Hipótesis: Por cada compra sólo se puede adquirir una vez cada promoción.
PROMOCIONES VENDIDAS
nro_factura nombre_cliente descripción_promo nombre_producto
0249-19855 Juana Auzqui Fiesta-Pancho Pack salchichas x6
0249-19855 Juana Auzqui Fiesta-Pancho Pack pan de viena x6
0249-19855 Juana Auzqui Fiesta-Pancho Mayonesa 250gr
0034-20329 Bernardo Lühn Vajilla Reluciente Esponjas x2
0034-20329 Bernardo Lühn Vajilla Reluciente 1 detergente Universo
0034-20329 Bernardo Lühn Vajilla Reluciente 1 antigrasa Universo
0034-20329 Bernardo Lühn Vajilla Reluciente Repasadores x3
0058-91330 Bernardo Lühn Fiesta-Pancho Pack salchichas x6
0058-91330 Bernardo Lühn Fiesta-Pancho Pack pan de viena x6
0058-91330 Bernardo Lühn Fiesta-Pancho Mayonesa 250gr
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 35 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Dependencias multivaluadas y 4FN
Dependencia multivaluada
Situación
PROMOCIONESVENDIDAS
nro_factura nombre_cliente descripción_promo nombre_producto
0249-19855 Juana Auzqui Fiesta-Pancho Pack salchichas x6
0249-19855 Juana Auzqui Fiesta-Pancho Pack pan de viena x6
0249-19855 Juana Auzqui Fiesta-Pancho Mayonesa 250gr
0034-20329 Bernardo Lühn Vajilla Reluciente Esponjas x2
0034-20329 Bernardo Lühn Vajilla Reluciente 1 detergente Universo
0034-20329 Bernardo Lühn Vajilla Reluciente 1 antigrasa Universo
0034-20329 Bernardo Lühn Vajilla Reluciente Repasadores x3
0058-91330 Bernardo Lühn Fiesta-Pancho Pack salchichas x6
0058-91330 Bernardo Lühn Fiesta-Pancho Pack pan de viena x6
0058-91330 Bernardo Lühn Fiesta-Pancho Mayonesa 250gr
Clave de la relación:
{nro_factura, descripcion_promo, nombre_producto}.
No es cierto que “nombre_producto” dependa funcionalmente de
“descripción_promo”. Sin embargo, tenemos información
redundante porque los productos que integran cada promo son
siempre los mismos independientemente de quienes compran la
promo.
Este tipo de redundancia es capturado por el concepto de
dependencia multivaluada.
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 36 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Dependencias multivaluadas y 4FN
Dependencia multivaluada
Definición [ELM16 14.6]
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 37 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Dependencias multivaluadas y 4FN
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 38 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Dependencias multivaluadas y 4FN
Descomposición a FNBC
ClienteFactura(nro_factura, nombre_cliente)
PromoProdFactura(nro_factura, descripción_promo, nombre_producto)
Descomposición a 4FN
Promociones(descripción_promo, nombre_producto)
ClientesFactura(nro_factura, nombre_cliente)
PromocionesFactura(nro_factura, descripción_promo)
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 39 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Dependencias multivaluadas y 4FN
PROMOCIONES
descripción_promo nombre_producto
Fiesta-Pancho Pack salchichas x6
Fiesta-Pancho Pack pan de viena x6
Fiesta-Pancho Mayonesa 250gr
Vajilla Reluciente Esponjas x2
Vajilla Reluciente 1 detergente Universo
Vajilla Reluciente 1 antigrasa Universo
Vajilla Reluciente Repasadores x3
CLIENTESFACTURA
nro_factura nombre_cliente
0249-19855 Juana Auzqui
0034-20329 Bernardo Lühn
PROMOCIONESFACTURA
nro_factura descripción_promo
0249-19855 Fiesta-Pancho
0034-20329 Vajilla Reluciente
0058-91330 Fiesta-Pancho
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 40 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Dependencias de junta y 5FN
1 Introducción
2 Dependencias funcionales
6 Bibliografía
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 41 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Dependencias de junta y 5FN
Descomposición
ProveedoresSucursales(sucursal, proveedor)
ProductosProveedores(proveedor, tipo_producto)
ProductosSucursales(sucursal, tipo_producto)
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 44 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Dependencias de junta y 5FN
PROVEEDORES SUCURSALES
sucursal proveedor PRODUCTOS PROVEEDORES
proveedor tipo_producto
Floresta El Picadero
El Picadero Vinos
Floresta La Bondad
La Bondad Leches
La Boca Blanquín
La Bondad Yerbas
La Boca Pirulo
Blanquín Bazar
Villa del Parque El Picadero
Blanquín Pañales
Villa del Parque Blanquín
Pirulo Bazar
Recoleta Blanquín
El Picadero Quesos
Recoleta Romualdo
Romualdo Quesos
Recoleta El Picadero
PRODUCTOS SUCURSALES
sucursal tipo_producto
Floresta Vinos
Floresta Leches
Floresta Yerbas
La Boca Bazar
La Boca Pañales
Villa del Parque Vinos
Villa del Parque Quesos
Villa del Parque Bazar
Recoleta Quesos
Recoleta Vinos
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 45 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Dependencias de junta y 5FN
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 46 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Bibliografía
1 Introducción
2 Dependencias funcionales
6 Bibliografía
Alberto Fasce, Mariano Beiró | Dpto. de Computación - Facultad de Ingeniería (UBA) | 18 de abril de 2023 47 / 48
Teoría del Diseño Relacional. Parte I: Formas Normales | Bibliografía
Bibliografía