diseño de bases de datos
DESCRIPTION
Diseño de Bases de Datos. Normalización. Proceso de Construcción de una base de datos. Minimundo. OBTENCION Y ANALISIS DE REQUERIMIENTOS. DISEÑO CONCEPTUAL Modelo Entidad Relación Extendido. NORMALIZACION. Independiente del SGBD. DISEÑO LOGICO Tablas. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/1.jpg)
Diseño de Bases de Datos
Normalización
![Page 2: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/2.jpg)
Proceso de Construcción de una base de datos
OBTENCION Y ANALISIS DE REQUERIMIENTOS
DISEÑO FISICO
Independiente del SGBD
Específico para cada SGBD
Minimundo
Minimundo
DISEÑO CONCEPTUALModelo Entidad Relación
Extendido
DISEÑO LOGICOTablas
NORMALIZACION
![Page 3: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/3.jpg)
¿Cómo utilizamos la normalización nosotros?
OBTENCION Y ANALISIS DE REQUERIMIENTOS
DISEÑO FISICO
Independiente del SGBD
Específico para cada SGBD
Minimundo
Minimundo
DISEÑO CONCEPTUALModelo Entidad Relación
Extendido
DISEÑO LOGICOTablas
NORMALIZACION
![Page 4: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/4.jpg)
Normalización
Objetivo elegir “buenas” estructuras de relaciones
Expresar formalmente las razones por las que una agrupación de atributos
es mejor que otra
permitiendo
![Page 5: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/5.jpg)
Normalización
“Bondad” de las relaciones
Nivel lógico
Forma en la que los usuarios interpretan:
• las estructuras de las relaciones
• el significado de sus atributos
Nivel de implementación
Forma en la que se manipulan:
• cómo se almacenan las tuplas de la relación
• cómo se actualizan las tuplas de la relación
![Page 6: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/6.jpg)
Aspectos importantes a considerar a la hora de diseñar
1. Semántica de los atributos
2. Cada atributo debe contener un único valor
3. Reducción de valores redundantes en las tuplas
![Page 7: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/7.jpg)
1. Semántica de los atributos:
Agrupación de atributos dentro de una relación
Supone un cierta relación semántica entre los atributos
Aspectos importantes a considerar a la hora de diseñar
![Page 8: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/8.jpg)
2. Cada atributo debe ser monovaluado
Nro_Suc Nombre Localidad Departamento1 Sacramento 4234322 4234467 Toranzo 350 Norte Desamparados Capital2 Higueras 4332323 C.Cabot 3350 Oeste Rivadavia Rivadavia3 Espigas 4223434 4221367 Aberastain 333 Sur Concepcion Capital4 Santa Rita 4221123 4335678 Av. Libertador 1230 Oeste Desamparados Capital5 Excelencia 4228976 4223490 Av. Libertador 30 Oeste Capital Capital6 Castillo 4962579 Ig. de la Roza 671 Caucete Caucete
Direccion Telefonos
no es válido
grupo repetitivo
no es válido
atributo compuesto
Sucursales
Aspectos importantes a considerar a la hora de diseñar
![Page 9: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/9.jpg)
2.Cada atributo debe ser monovaluado:Esto implica que la relación anterior debiera reemplazarse por las siguientes:
Aspectos importantes a considerar a la hora de diseñar
Nro_Suc Nombre Localidad Departamento1 Sacramento Toranzo 350 Norte Desamparados Capital2 Higueras C.Cabot 3350 Oeste Rivadavia Rivadavia3 Espigas Aberastain 333 Sur Concepcion Capital4 Santa Rita Av. Libertador 1230 Oeste Desamparados Capital5 Excelencia Av. Libertador 30 Oeste Capital Capital6 Castillo Ig. de la Roza 671 Caucete Caucete
DireccionSucursales
![Page 10: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/10.jpg)
Nro_Suc Telefono
1 42344673 42213674 43356785 42234901 42343222 43323233 42234344 42211235 42289766 4962579
Telefonos_Suc
Aspectos importantes a considerar a la hora de diseñar
2. Cada atributo debe ser monovaluado:
![Page 11: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/11.jpg)
3. Reducción de valores redundantes:
Dentro de los principales objetivos en el diseño de relaciones
Minimizar el espacio de almacenamiento que ocupan las relaciones
base (archivos)
Evitar anomalías de actualización
Aspectos importantes a considerar a la hora de diseñar
![Page 12: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/12.jpg)
DNI_Cli Nombre_Cli Tel_Cli Direccion_Cli Nro_Suc Nombre_Suc Direccion_Suc17.343.232 Ana Perez 4223465 25 de Mayo 504 Este 1 Sacramento Toranzo 350 Norte 7.432.567 Juan Flores 4223312 Av. Cordoba 107 Oeste 1 Sacramento Toranzo 350 Norte 6.987.675 Sergio Alba 4221674 Aberastain 34 Sur 3 Espigas Aberastain 333 Sur14.878.234 Miguel Gomez 4340023 H. Yrigoyen 1171 Sur 5 Santa Rita Av.Libertador 1230 Oeste20.333.675 Silvia Gomez 4233495 Av. Libertador 3300 Oeste 3 Espigas Aberastain 333 Sur 6.967.908 Javier Lima 4231100 H. Yrigoyen 11 Sur 6 Castillo Ig. de la Roza 671
Clientes_de_Sucursal
3. Reducción de valores redundantes:
Aspectos importantes a considerar a la hora de diseñar
![Page 13: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/13.jpg)
• ¿Cuantas veces aparece la información correspondiente a cada sucursal? ¿Qué problemas puede acarrear?
Analicemos la redundancia:
3. Reducción de valores redundantes:
Aspectos importantes a considerar a la hora de diseñar
![Page 14: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/14.jpg)
• ¿Qué sucede si queremos ingresar un nuevo cliente? De que debemos asegurarnos?
• ¿Qué sucede si queremos ingresar una sucursal nueva que todavía no tiene clientes? ¿Es posible?
Analicemos las inserciones:
3. Reducción de valores redundantes:
Aspectos importantes a considerar a la hora de diseñar
DNI_Cli Nombre_Cli Tel_Cli Direccion_Cli Nro_Suc Nombre_Suc Direccion_Suc17.343.232 Ana Perez 4223465 25 de Mayo 504 Este 1 Sacramento Toranzo 350 Norte 7.432.567 Juan Flores 4223312 Av. Cordoba 107 Oeste 1 Sacramento Toranzo 350 Norte 6.987.675 Sergio Alba 4221674 Aberastain 34 Sur 3 Espigas Aberastain 333 Sur14.878.234 Miguel Gomez 4340023 H. Yrigoyen 1171 Sur 5 Santa Rita Av.Libertador 1230 Oeste20.333.675 Silvia Gomez 4233495 Av. Libertador 3300 Oeste 3 Espigas Aberastain 333 Sur 6.967.908 Javier Lima 4231100 H. Yrigoyen 11 Sur 6 Castillo Ig. de la Roza 671
![Page 15: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/15.jpg)
• ¿Qué sucede si queremos eliminar el cliente Miguel Gomez?
Analicemos las supresiones:
3. Reducción de valores redundantes:
Aspectos importantes a considerar a la hora de diseñar
DNI_Cli Nombre_Cli Tel_Cli Direccion_Cli Nro_Suc Nombre_Suc Direccion_Suc17.343.232 Ana Perez 4223465 25 de Mayo 504 Este 1 Sacramento Toranzo 350 Norte 7.432.567 Juan Flores 4223312 Av. Cordoba 107 Oeste 1 Sacramento Toranzo 350 Norte 6.987.675 Sergio Alba 4221674 Aberastain 34 Sur 3 Espigas Aberastain 333 Sur14.878.234 Miguel Gomez 4340023 H. Yrigoyen 1171 Sur 5 Santa Rita Av.Libertador 1230 Oeste20.333.675 Silvia Gomez 4233495 Av. Libertador 3300 Oeste 3 Espigas Aberastain 333 Sur 6.967.908 Javier Lima 4231100 H. Yrigoyen 11 Sur 6 Castillo Ig. de la Roza 671
![Page 16: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/16.jpg)
• ¿Qué sucede si queremos registrar que la sucursal Espigas cambio su dirección?
Analicemos las modificaciones:
3. Reducción de valores redundantes:
Aspectos importantes a considerar a la hora de diseñar
DNI_Cli Nombre_Cli Tel_Cli Direccion_Cli Nro_Suc Nombre_Suc Direccion_Suc17.343.232 Ana Perez 4223465 25 de Mayo 504 Este 1 Sacramento Toranzo 350 Norte 7.432.567 Juan Flores 4223312 Av. Cordoba 107 Oeste 1 Sacramento Toranzo 350 Norte 6.987.675 Sergio Alba 4221674 Aberastain 34 Sur 3 Espigas Aberastain 333 Sur14.878.234 Miguel Gomez 4340023 H. Yrigoyen 1171 Sur 5 Santa Rita Av.Libertador 1230 Oeste20.333.675 Silvia Gomez 4233495 Av. Libertador 3300 Oeste 3 Espigas Aberastain 333 Sur 6.967.908 Javier Lima 4231100 H. Yrigoyen 11 Sur 6 Castillo Ig. de la Roza 671
![Page 17: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/17.jpg)
Estos problemas son denominados
Anomalías de actualización
Aspectos importantes a considerar a la hora de diseñar
![Page 18: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/18.jpg)
Analicemos los mismos interrogantes con las siguientes relaciones:Sucursales
Nro_Suc Nombre Localidad Departamento1 Sacramento Toranzo 350 Norte Desamparados Capital2 Higueras C.Cabot 3350 Oeste Rivadavia Rivadavia3 Espigas Aberastain 333 Sur Concepcion Capital4 Santa Rita Av. Libertador 1230 Oeste Desamparados Capital5 Excelencia Av. Libertador 30 Oeste Capital Capital6 Castillo Ig. de la Roza 671 Caucete Caucete
Direccion
DNI_Cli Nombre_Cli Tel_Cli Direccion_Cli Localidad Departamento17.343.232 Ana Perez 4223465 25 de Mayo 504 Este Concepcion Capital 7.432.567 Juan Flores 4223312 Av. Cordoba 107 Oeste Capital Capital 6.987.675 Sergio Alba 4221674 Aberastain 34 Sur Capital Capital14.878.234 Miguel Rueda 4340023 H. Yrigoyen 1171 Sur Rawson Rawson20.333.675 Silvia Gomez 4233495 Av. Libertador 3300 Oeste Rivadavia Rivadavia 6.967.908 Javier Lima 4231100 H. Yrigoyen 11 Sur Rivadavia Rivadavia
Clientes
DNI_Cli Nro_Suc17.343.232 1 7.432.567 1 6.987.675 314.878.234 520.333.675 3 6.967.908 6
Es_cliente_de
3. Reducción de valores redundantes
Aspectos importantes a considerar a la hora de diseñar
![Page 19: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/19.jpg)
Debemos diseñar las relaciones de manera de evitar las anomalías de inserción, eliminación y modificación en
las relaciones
Evitar la inconsistencia
de la base de datos
3. Reducción de valores redundantes:
Aspectos importantes a considerar a la hora de diseñar
![Page 20: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/20.jpg)
Formas Normales (1FN a la 5FN):
Normalización
- Dependencia Funcional- Dependencia Multivaluada- Dependencia Join
![Page 21: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/21.jpg)
Normalización (Formas Normales)
2FN 3FN FNBC 4FN1FN 5FN
Universo de todas las relaciones
![Page 22: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/22.jpg)
Primera Forma Normal
Una relación R está en 1FN si los dominios de todos sus atributos son atómicos
Toda relación R está en 1FN, por definición
![Page 23: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/23.jpg)
si para 2 tuplas cualesquiera t1 y t2 de R tales que t1(X)= t2(X) entonces t1(Y)= t2(Y) en todo
estado de R
Dependencia Funcional
Dependencia Funcional
X Y
si para cada valor de X le corresponde sólo un valor de Y en todo estado de R
o expresado de otra manera
X Y
![Page 24: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/24.jpg)
Dependencia Funcional Trivial y No Trivial
es Trivial si X contiene a YX Y
Z+Y Y es Trivial
Caso contrario, es no TrivialX Y
![Page 25: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/25.jpg)
Claves
Dada una relación R, un subconjunto de atributos S de R es superclave si su valor es único dentro
de la relación en todo momento.
Formalmente, si no existe un par de tuplas t1, t2 tal que t1[S]= t2[S], para todo estado permitido
de la relación.
![Page 26: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/26.jpg)
ClavesDada una relación R, un subconjunto de atributos K de R
es clave candidata o simplemente clave si cumple:
Unicidad: No existe un par de tuplas que tengan el mismo valor para K, es decir, es superclave.
Minimalidad: Si se quita algún atributo de la misma deja de cumplir la unicidad.
Entonces, sea K={A1, A2, …, Ak}, si K es clave entonces K –{Ai} no es clave para 1≤i ≤k
![Page 27: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/27.jpg)
Claves
Una relación puede contener más de una clave, llamadas claves candidatas:
Se elige una como clave primaria
A las restantes, se las denomina claves secundarias o alternativas.
![Page 28: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/28.jpg)
Atributo Primo
Un atributo de R se denomina atributo primo de R si es miembro de alguna clave de R.
“Un atributo de R se denomina atributo no primo de R si no es atributo primo”
![Page 29: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/29.jpg)
Segunda Forma Normal
Se basa en el concepto de dependencia funcional completa o total:
- Una dependencia funcional es completa si la eliminación de cualquier atributo A de X hace que la dependencia no sea válida. Es decir, X-A no determina funcionalmente a Y.
X Y
- Una dependencia funcional es parcial si es posible eliminar algún atributo A de X y la dependencia sigue siendo válida.
X Y
![Page 30: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/30.jpg)
Segunda Forma Normal
Una relación R está en 2FN si todo atributo no primo A de R depende funcionalmente en forma
completa de la clave primaria de R.
![Page 31: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/31.jpg)
Segunda Forma Normal
Si una relación no está en 2FN, descomponerla y crear una nueva relación para cada clave parcial
con su/s atributo/s dependiente/s.
Solución:
![Page 32: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/32.jpg)
Descomposiciones válidas Toda descomposición debe cumplir una restricción
(no sólo para la 2FN, sino para todas)
No provocar pérdida de información, es decir,
el join (union) de las proyecciones genera la relación original
Inclusive, provocan ganancia de información.
Permiten registrar información que en la relación original era imposible.
![Page 33: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/33.jpg)
Tercera Forma Normal
Una relación R está en 3FN si está en 2FN y ningún atributo no primo de R depende en forma
transitiva de la clave primaria.
![Page 34: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/34.jpg)
Tercera Forma Normal
Definición General
Una relación R está en 3FN si para toda dependencia funcional no trivial se cumple:
a) X es superclave de R
o
b) Y es un atributo primo
X Y
![Page 35: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/35.jpg)
Tercera Forma Normal
Solución:
Si una relación no está en 3FN, descomponerla creando otra relación que contenga el/los atributo/s no clave que determinen funcionalmente a otro/s atributo/s no clave.
Nota: “Tener cuidado con las posibles descomposiciones”
![Page 36: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/36.jpg)
Forma Normal de Boyce y Codd
Una relación R está en FNBC si todo determinante es clave candidata.
Una relación que está en 3FN
No necesariamente está en BCNF
Una relación que está en BCFN Está en 3FN
![Page 37: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/37.jpg)
Forma Normal de Boyce y Codd
Otra Definición
Una relación R está en FNBC si para toda dependencia funcional no trivial X es
superclave de R.X Y,
![Page 38: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/38.jpg)
Forma Normal de Boyce y Codd
Veamos un ejemplo:
•Nro_Catastral
•Nombre_Municipio+Parcela
•Superficie
Determinantes:•Nro_Catastral
•Nombre_Municipio+Parcela
Claves candidatas:
DF1
Cada parcela es identificada por su nro. catastral
DF2
Cada parcela es identificada
dentro de un municipio, por su nro. de parcela
DF3
Las sup. de las parcelas de cada
municipio son diferentes, pero,
no existe una sup.que
corresponda a más de un municipio.
No es clave candidata FNBC
![Page 39: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/39.jpg)
Forma Normal de Boyce y Codd
Al descomponer:
• Nro_CatastralDeterminantes:
• Nro_CatastralClaves candidatas:
• SuperficieDeterminantes:
Claves candidatas:• Superficie
BCNF BCNF
![Page 40: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/40.jpg)
Dada una relación R con atributos (X,Y,Z), X multidetermina a Y, y se simboliza , si se cumple que dado un par (X,Z) el conjunto de valores de {Y} que coinciden con ese
par, dependen de X y no dependen de Z.
Cuarta Forma Normal
Se basa en el concepto de dependencia multivaluada (DMV)
X Y
![Page 41: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/41.jpg)
DMV no funcionales
Cuarta Forma Normal
Una relación R está en 4FN sii está en FNBC y no existen DMV no funcionales.
DF
DMV
![Page 42: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/42.jpg)
Cuarta Forma Normal
Otra definición:
Una relación R está en 4FN sii está en FNBC y toda DMV es DF.
DF
DMV
![Page 43: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/43.jpg)
Cuarta Forma Normal
Veamos un ejemplo:• Cada curso puede ser dictado por varios profesores.
• Cada curso tiene libros asignados, independientemente del profesor que lo dicte. Es decir, el profesor no decide los
libros que usa en un curso determinado.
![Page 44: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/44.jpg)
Dado un par (Curso, Profesor), por ejemplo (Bases de Datos I, Castro) el conjunto de valores de Libro {Fundamentos de Bases de Datos,
Introducción a los DBMS}:
¿Curso Libro?
Cuarta Forma Normal
Curso Libro1. ¿Depende del Curso?
2. ¿Depende del Profesor?
Sí depende
No depende
![Page 45: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/45.jpg)
Cuarta Forma Normal
En esta relación se verifican:
DMV1
DMV2
Las dos dependencias multivaluadas no son funcionales.
Por lo tanto, la relación no está en 4FN.
![Page 46: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/46.jpg)
Cuarta Forma Normal
Solución:
• Está en BCNF
• No presenta DMV
• Está en BCNF
• No presenta DMV
Está en 4FN Está en 4FN
![Page 47: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/47.jpg)
Quinta Forma Normal
Se basa en el concepto de Dependencia Join (DJ)
Dependencia Join = n-descomponible n>2
![Page 48: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/48.jpg)
Quinta Forma Normal
Una relación R está en 5FN sii está en 4FN y toda DJ es consecuencia de la clave primaria.
Cada proyección de la DJ contiene a la clave primaria
![Page 49: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/49.jpg)
Quinta Forma NormalProveedores
¿La relación Proveedores está en 5FN?
![Page 50: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/50.jpg)
Quinta Forma Normal
¿Es posible descomponerla en al menos 3 proyecciones sin perder información?
¿Existe al menos una Dependencia Join?
Contiene la clave primaria
Contiene la clave primaria
Contiene la clave primaria
![Page 51: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/51.jpg)
Quinta Forma Normal
Está en 5 FN
![Page 52: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/52.jpg)
Quinta Forma Normal
Ahora analicemos esta otra relación:
Supongamos que satisface la siguiente restricción en todo estado válido:
Si (S1,P1), (P1,J1) y (S1,J1) entonces debe aparecer la tupla (S1,P1,J1) en la relación.
Restricción cíclica
![Page 53: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/53.jpg)
Quinta Forma Normal
La inserción de la tupla
Esta restricción genera la siguiente situación:
![Page 54: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/54.jpg)
Quinta Forma Normal
Join de las 3 proyecciones genera la relación original
Clave primaria
No contiene la clave primaria
No contiene la clave primaria
No contiene la clave primaria
5FN
Analicemos ahora si está en 5FN…
![Page 55: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/55.jpg)
Quinta Forma Normal
5FN
Solución:
5FN 5FN
No posee DJs No posee DJs No posee DJs
![Page 56: Diseño de Bases de Datos](https://reader036.vdocumento.com/reader036/viewer/2022062722/56813b21550346895da3d9c3/html5/thumbnails/56.jpg)
Normalización
Bibliografía:
• Date - Introducción a los Sistemas de Bases de Datos
• Elmasri - Fundamentos de Bases de Datos