BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

49
BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de Bases de Datos Relacionales. Lledó Museros / Ismael Sanz [email protected] / [email protected] Tema 8 1 de 49

Transcript of BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

Page 1: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

BASES DE DATOS (IG18 Semipresencial)Diseño Lógico de Bases de Datos Relacionales.

Lledó Museros / Ismael [email protected] / [email protected]

Tema 8

1 de 49

Page 2: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

1. Introducción2. Metodología de diseño lógico en el modelo

relacional3. Normalización

Tema 8 Índice

2 de 49

Page 3: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

Fases en el Diseño de BBDD

Tema 8 Introducción

3 de 49

Especificación de requisitos

DISEÑO CONCEPTUAL

Esquema conceptual

Esquema lógico

Esquema físico

DISEÑO LÓGICO

DISEÑO FÍSICO

Normalización

Page 4: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

IObviamente, si se utiliza el modelo relacional, el objetivo será obtener un esquema lógico relacionalDicho esquema estará formado por:

Un conjunto de relaciones o tablas (en tercera forma normal).Claves primarias para cada tablaClaves ajenas de las distintas tablas y sus reglas de borrado y modificaciónReglas de integridad necesarias

Tema 8 Introducción

4 de 49

Page 5: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

Diseño lógico: conversión del esquema conceptual de datos en un esquema lógico. Objetivo: obtener una representación que use de la manera más eficiente posible los recursos para la estructuración de datos y el modelado de restricciones disponibles en el modelo lógico.

Información de la cargaVolumen de la BBDDConocimiento de consultas y transacciones a realizar, y su frecuencia.

Criterios de RendimientoTiempo de respuesta medio o máximoEspacio de almacenamiento ocupado por la BBDDUtilización de CPU o tiempo de E/S

Tema 8 Introducción

5 de 49

DISEÑOLÓGICO

esquema conceptualinformación de la

cargacriterios de rendimiento

esquema lógico

Page 6: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

1. Introducción2. Metodología de diseño lógico en el modelo

relacional3. Normalización

Tema 8 Índice

6 de 49

Page 7: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

t1. Refinar el esquema conceptual2. Derivar un conjunto de relaciones (tablas)3. Validar cada esquema mediante la

normalización

Tema 8 Metodología deDiseño Lógico

7 de 49

Page 8: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

1. Refinar el esquema conceptuala) Sustituir cada relación entre tres o más entidades por una

entidad intermedia. La cardinalidad de las nuevas relaciones binarias dependerá de su significado. Si la relación sustituida tiene atributos, éstos serán los atributos de la nueva entidad.

Tema 8 Metodología deDiseño Lógico

8 de 49

PILOTO

codpil

(0,n) (0,n)AVIÓN

codavinombre matrículaTRIPULACIÓN

codtrip nombre

(0,n)

viaje

fecha

codavi

PILOTO

codpil

(0,n)

(0,n)

AVIÓN

nombre

matrícula

TRIPULACIÓN

codtrip

(0,n)

viaje

fecha

nombre

(1,1)

(1,1)(1,n

)

Page 9: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

1. Refinar el esquema conceptualb) Eliminar las relaciones redundantes

Tema 8 Metodología deDiseño Lógico

9 de 49

alberga

ANIMAL

ZOO ESPECIE

posee pertenece(1,1) (1,1)

(1,n) (1,n)

(1,n) (1,n)

(0,1)

EMPLEADO CIUDAD

residencia

nacimiento

(1,n) (0,n)

(0,n)

Page 10: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

1. Refinar el esquema conceptualc) Transformar las clasificacionesEjemplo:

Tema 8 Metodología deDiseño Lógico

10 de 49

E

E1 E2 E3

a1a2

a3 a4 a5

( p/t, e/s )

Se puede transformar en...Clasificación Original

(1,1)E1

(1,1)E2 E3

(0,1)(0,1)

(1,1)

Ea1a2(0,1)

a3 a4 a5

Más adelante se verá con más detalle todas las posibles transformaciones.

Page 11: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Derivar un conjunto de relaciones (tablas)

En el modelo relacional sólo se pueden representar tablas.Todos los elementos del esquema conceptual se deben transformar en tablas:

EntidadesClasificaciones (jerarquías de generalización)Relaciones: de uno a uno, de uno a muchos y de muchos a muchos

Tema 8 Metodología deDiseño Lógico

11 de 49

Page 12: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Derivar un conjunto de relaciones: Entidades

Cada entidad del esquema conceptual se transforma en una relación base (tabla).

Los atributos de la entidad se convierten en los atributos de la tabla.De entre los identificadores de la entidad se debe escoger uno como clave primaria de la tabla.

Tema 8 Metodología deDiseño Lógico

12 de 49

CIUDAD nombre

código

num. habitantes

altitud(0,1)

CIUDAD(nombre, codigo, num_habitantes, altitud)Codigo es clave alternativa y altitud acepta nulos

Page 13: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Derivar un conjunto de relaciones: Entidades

Cada componente de un atributo compuesto se convierte en un atributo de la tabla.

Tema 8 Metodología deDiseño Lógico

13 de 49

ASUNTO(numero_expediente, estado, fecha_inicio, fecha_fin)fecha_fin acepta nulos

También es posible transformar el atributo compuesto en uno solo que contenga todos los atributos simples (por ejemplo el atributo compuesto dirección formado por calle, número y piso se puede transformar en uno sólo (de tipo cadena de caracteres) que incluya a los tres.

ASUNTO

número_expedienteestado

período

fecha_inicio fecha_fin

(0,1)

Page 14: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Derivar un conjunto de relaciones: Entidades

Por cada atributo de cardinalidad máxima mayor que uno se incluye una tabla dentro de la tabla, como un atributo más.

Tema 8 Metodología deDiseño Lógico

14 de 49

EMPLEADO(dni, nombre, TITULO(titulo))¿titulo acepta NULOS?

EMPLEADO

dninombre

titulo(0,n)

Page 15: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Derivar un conjunto de relaciones: Entidades

Tema 8 Metodología deDiseño Lógico

15 de 49

LIBRO(isbn, editorial, AUTOR(autor),idioma,título_ppal, subtítulo, EDICION(número, año))

LIBRO

isbn

editorial

autor(1,n)

edición

número año

(1,n)

idioma

título_ppal subtítulo

título

Page 16: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Derivar un conjunto de relaciones: Entidades

Tema 8 Metodología deDiseño Lógico

16 de 49

Page 17: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Derivar un conjunto de relaciones: Clasificaciones (jerarquías de generalización)

El modelo relacional no puede representar clasificacionesPor ello hay que modificar el esquema entidad/relaciónExisten 3 posibles alternativas:

1. No eliminar ninguna de las entidades, transformando las subentidades en entidades que se relacionan con la entidad padre

2. Eliminación de la entidad genérica, las subentidades heredan sus características

3. Integración de las subentidades en la entidad padre

Tema 8 Metodología deDiseño Lógico

17 de 49

Page 18: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Clasificaciones (jerarquías de generalización)1. Transformar las subentidades en entidades que se relacionan

con la entidad padre: Se obtiene una tabla por cada entidad y subentidad. Sirve para cualquier tipo de jerarquía (t/p, e/s).

Tema 8 Metodología deDiseño Lógico

18 de 49

E

E1 E2 E3

a1a2

a3 a4 a5

( p/t, e/s )

Se puede transformar en...Clasificación Original

(1,1)E1

(1,1)E2 E3

(0,1)(0,1)(1,1)

E a1a2(0,1)

a3 a4 a5Cuyo modelo Lógico es:

E(a1,a2) E1(a1,a3) E2(a1,a4) E3(a1,a5)NULOS BORRADO MODIFICACION

E1.a1, E2.a1, E3.a1 son claves ajenas a E NO Prop. Prop.

Page 19: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Clasificaciones (jerarquías de generalización)2. Eliminar la entidad genérica: Se obtiene una tabla por cada

subentidad. Sirve para cualquier tipo de jerarquía (t/p, e/s).

Tema 8 Metodología deDiseño Lógico

19 de 49

E

E1 E2 E3

a1a2

a3 a4 a5

( p/t, e/s )

Se puede transformar en...Clasificación Original

Cuyo modelo Lógico es:

E1(a1,a2,a3) E2(a1,a2,a4) E3(a1,a2,a5)

a1

E1

a3 a1 a2

E2

a4 a2

E3

a5 a1 a2

Page 20: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Clasificaciones (jerarquías de generalización)3. Integrar las sunbentidades en la entidad padre: Se obtiene sólo

una tabla. Sólo sirve para jerarquías totales y exclusivas.

Tema 8 Metodología deDiseño Lógico

20 de 49

E

E1 E2 E3

a1a2

a3 a4 a5

( p/t, e/s )

Se puede transformar en...Clasificación Original

Cuyo modelo Lógico es:

E(a1,a2,a3,a4,a5,tipo) si es exclusiva

a3,a4,a5 aceptan nulos, tipo acepta nulos si es parcial

E(a1,a2,a3,a4,a5,AD(tipo)) si es superpuesta

a3,a4,a5 aceptan nulos

AD(0/1,1/n)

Ea1a2

a3

a4

a5

(0,1)

(0,1)

(0,1)

Page 21: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Derivar un conjunto de relaciones: Relaciones binarias (1:1)

Por cada relación binaria (1:1) incluir la clave primaria de la tabla correspondiente a la entidad padre en la tabla de la entidad hijo como una clave ajena. ¿Y los atributos de la relación?Ejemplo 1: Una empresa desea almacenar información sobre sus empleados y sobre los coches que conducen. Sólo algunos empleados conducen coches. Todos los coches están asignados a un (y sólo un) empleado.

Tema 8 Metodología deDiseño Lógico

21 de 49

EMPLEADO

codemp

(0,1)

nombre

(1,1)VEHíCULO

matrícula

modelo

hijo

conduce

fecha_ini

Page 22: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Derivar un conjunto de relaciones: Relaciones binarias (1:1). Ejercicio: A partir del esquema conceptual anterior, se han tomado dos opciones para modelarlo:El empleado E1 trabaja en las oficinas, se llama Juan.El empleado E2 es taxista, se llama Juan y conduce un renault de matricula HAB 2398 desde enero 2003El empleado E3 es taxista, se llama Ana y conduce un ford con matricula KLM 2343 desde Julio de 2003.El empleado E0 se llama Rosa y es la gerente

Opción 1 Opción 2

Tema 8 Metodología deDiseño Lógico

22 de 49Rellena las tablas de la opción 1 y 2. ¿Cuál es mejor? ¿Encuentras algún problema?Escribe una sentencia SELECT que obtenga los datos de las personas que conducen algún coche.

Page 23: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Derivar un conjunto de relaciones: Relaciones binarias (1:1)

Ejemplo 2: Una empresa desea almacenar información sobre sus empleados y sobre los coches que conducen. Todos los empleados conducen coches. Los coches pueden estár asignados a un (y sólo un) empleado o no estar asignados a ninguno.

Tema 8 Metodología deDiseño Lógico

23 de 49

EMPLEADO

codemp

(1,1)

nombre

(0,1)VEHíCULO

matrícula

modelo

hijo

conduce

fecha_iniVEHICULO(matricula, modelo)

EMPLEADO(codemp, nombre, matricula, fecha_ini)

matricula Nulos Borrado Modificación

EMPLEADO VEHICULO

matricula es clave alternativa ¿fecha_ini acepta nulos?

Page 24: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Relaciones binarias (1:1)

Una pequeña diferencia entre los dos ejemplos da lugar a dos esquemas lógicos con diferencias notables.¿Y si las dos entidades participan con cardinalidad (0,1)?¿Y si son ambas (1,1)?Otra posibilidad es sustituir la interrelación por una tabla que hereda las claves primarias de las dos entidades. La clave primaria de la nueva tabla dependerá del significado de los datos y de las cardinalidades de las entidades.

Ejercicio: Reescribe los cuatro ejemplos utilizando una tabla para cada entidad y una tercera para la interrelación.

Tema 8 Metodología deDiseño Lógico

24 de 49

Page 25: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Relaciones binarias (1:1)Los identidicadores externos pueden tratarse de dos formas:Juntar las dos entidades en una sóla

Crear dos entidades añadiéndole a la que tiene el identificador externo el identificador de la otra entidad (que será una clave ajena a ésta)

OJO: Si las dos entidades son sinónimos, integrarlas en una sola tabla.

Tema 8 Metodología deDiseño Lógico

25 de 49

CLIENTE

dirección

(0,1) (1,1)ENVÍO

nombre dirección

codcli !!Son Sinónimos!!

CLIENTE(codcli, dirección, nombre, dirección_envío)

ENVÍO es un entidad débil porque no tiene atributos que le sirvan como identificador.

Page 26: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Relaciones binarias (1:1)Las relaciones de una entidad consigo misma se tratan del mismo modo que las binarias:

Ejercicio: Escribe cuál sería el esquema relacional

Tema 8 Metodología deDiseño Lógico

26 de 49

es_acompañada_por

codper PERSONA

(0,1)

(1,1)

nombre

acompaña_a

Page 27: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Derivar un conjunto de relaciones: Relaciones binarias (1:n)

Por cada relación binaria (1:n) incluir la clave primaria de la tabla correspondiente a la entidad padre en la tabla de la entidad hijo (será una clave ajena). ¿Y los atributos de la relación?Ejemplo 1:

Tema 8 Metodología deDiseño Lógico

27 de 49

PROFESOR

codpro

(0/1,n)

nombre

(1,1)ESTUDIANT

E

codest nombre

padre

tutor

fecha

PROFESOR(codpro, nombre)

ESTUDIANTE(codest, nombre, codpro, fecha)

codpro NULOS Borrado Modificación

ESTUDIANTE PROFESOR

¿fecha acepta nulos?

Page 28: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Relaciones binarias (1:n)Ejemplo 2:

Tema 8 Metodología deDiseño Lógico

28 de 49

HABITACIÓN

numhab

(0/1,n)

edificio

(1,1)ESTUDIANT

E

codest nombre

padre

ocupa

fecha

HABITACIÓN(numhab, edificio)

ESTUDIANTE(codest, nombre, numhab, fecha)

codpro NULOS Borrado Modificación

ESTUDIANTE HABITACIÓN

¿fecha acepta nulos?

¿Y si hay muy pocos estudiantes que viven en una habitación del campus?

Page 29: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Relaciones binarias (1:n)Ejercicio: ¿cuál es la cardinalidad de la entidad CITA?¿cómo transformarías los dos ejemplos?

Tema 8 Metodología deDiseño Lógico

29 de 49

CLIENTE

codcli nombre

(0/1,n)

(¿,?)CITA

fecha

hora

nombreCLIENTEcodcli

(0,n)

(0,1)

recomendado_por

recomienda_a

Page 30: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Derivar un conjunto de relaciones: Relaciones binarias (m:n)

Por cada relación binaria (m:n) incluir una nueva tabla con una clave ajena a cada una de las tablas correspondientes a las entidades participantes.La clave primaria de la nueva tabla dependerá del significado de los datos.¿Y los atributos de la relación? Se añaden a la tabla correspondiente a la relación

Tema 8 Metodología deDiseño Lógico

30 de 49

Page 31: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Relaciones binarias (m:n)Ejemplo 1

Tema 8 Metodología deDiseño Lógico

31 de 49

codest

ASIGNATURA

codasi

(0,n) (1,n)

nombre

ESTUDIANTE

nombre

cursa

ASIGNATURA(codasi, nombre)

ESTUDIANTE(codest, nombre)

CURSA(codest, codasi)

codest Nulos Borrado Modificación

CURSA ESTUDIANTE

codasi Nulos Borrado Modificación

CURSA ASIGNATURA

¿Cuál es la clave primaria de CURSA?

Page 32: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

2. Relaciones binarias (m:n)Ejemplo 2

Tema 8 Metodología deDiseño Lógico

32 de 49

PACIENTE(codpac, nombre)

MÉDICO(codmed, nombre)

CITA(codmed, fecha, hora, codpac)

codest Nulos Borrado Modificación

CITA PACIENTE

codasi Nulos Borrado Modificación

CITA MÉDICO

¿Cuál es la clave primaria de CITA?

codmed

PACIENTE

codpac

(1,n) (0,n)

nombre

MÉDICO

nombre

cita

fecha

hora

Page 33: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

Resumen de la correspondencia entre esquemas para las relacionesbinarias

Tema 8 Metodología deDiseño Lógico

Page 34: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

3. Validar cada esquema mediante la normalización

La teoría de la normalización, desarrollada por Codd en 1972, permite mejorar el diseño lógico de una Base de datos relacional. Aunque es una técnica para diseñar bases de datos relacionales, no se utiliza como estrategia de diseño de base de datos sino para verificar esquemas relacionales.Se fundamente en las Formas Normales, que son un conjunto de restricciones que deben cumplir las relaciones.Ventajas:

Evita anomalías en inserciones, modificaciones y borrados.Mejora la independencia de datos.

Tema 8 Metodología deDiseño Lógico

34 de 49

Page 35: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

1. Introducción2. Metodología de diseño lógico en el modelo

relacional3. Normalización

Tema 8 Índice

35 de 49

Page 36: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

3. Normalización. EjemploSe desea almacenar información sobre las facturas que realizan los clientes de una empresa así como los artículos que compran:

Tema 8 Normalización

36 de 49

Page 37: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

3. Normalización. Ejemplo

Tema 8 Normalización

37 de 49

Page 38: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

Ejemplo. Escribe en las dos tablas los siguientes datos:La factura 3125 es del 23/09/2003, con un 16% de IVA y del cliente 355 cuyo nombre es Juan Diaz de Castellón. Se vendieron 3 tuercas de doble paso (cod. 345T) por un precio de 2.25 Euros y 2 tornillos de rosca reforzada (cod. T554) por 1 Euro.La factura 3126 es del 12/12/2003, con un 16% de IVA y del cliente 354 cuyo nombre es Rosa Fernández de Almazora. Se vendieron 3 tornillos de rosca reforzada (cod. T554) por 1.2 Euros.La factura 3127 es del 15/12/2003, con un 16% de IVA y del cliente 355 cuyo nombre es Juan Diaz de Castellón. Se vendieron 2 tornillos de rosca reforzada (cod. T554) por 1.1 Euros.Se ha comprado un nuevo artículo en el almacen con código 445A, arandelas cuadradas con un precio de 0.87 Euros.El cliente 355 devuelve las tres tuercas y solicita que se rectifique la factura 3125.El cliente 355 ha cambiado su domicilio a Villareal.El cliente 354 realiza la devolución de la factura 3126.Se ha hecho un nuevo cliente, Ferran Sabater de Castellón con código 337.

Tema 8 Normalización

38 de 49

Page 39: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

Ejemplo:¡¡ Existen dependencias entre los datos, no sólo de la clave primaria!!Indica cuales són esas dependencias:

Genera ¡Anomalías en las actualizaciones de datos!

Tema 8 Normalización

39 de 49

Page 40: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

Ejemplo:

Tema 8 Normalización

40 de 49

Page 41: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

Dependencia funcionalDada una relación (tabla) R, el atributo Y de R depende funcionalmente del atributo X de R

R.X R.Ysi X determina el valor de Y, es decir, un valor Y en R está asociado a cada valor X en R. Tanto X como Y puede ser atributos compuestos.

Ejemplo:

Tema 8 Normalización

41 de 49

Page 42: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

Dependencia funcional. Observaciones:

Si el atributo X es una clave primaria (o alternativa) de R, entonces todos los atributos Y de la relación dependen funcionalmente de X, por la definición de clave primaria (o alternativa)La dependencia funcional es una noción semántica (depende del significado de los datos)Cada dependencia funcional es una clase especial de regla de integridadCada dependencia funcional representa una relación uno a muchos.

Tema 8 Normalización

42 de 49

Page 43: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

Primera Forma Normal (1FN):Una relación está en 1FN si, y sólo si, todos sus dominios contienen valores atómicos.

¡NO ESTA EN 1FN!Hay atributos que no son atómicos

Tema 8 Normalización

43 de 49

Page 44: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

Primera Forma Normal (1FN):

Se extrae de la tabla anidada añadiendole la clave primaria a la tabla principal. La clave primaria de la nueva tabla será la unión de la que tenía más la de la tabla principal.

¡OJO! La nueva tabla hereda parte de la clave primariaEjericio: Rellena los huecos que faltan en la clave ajena.

Tema 8 Normalización

44 de 49

Page 45: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

Segunda Forma Normal (2FN):Una relación esta en 2FN si, y sólo si, está en 1FN y, además, cada atributo no clave depende completamente de a clave primaria (no depende de algún subconjunto)

Tema 8 Normalización

45 de 49

Page 46: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

Segunda Forma Normal (2FN):

Se extraen los atributos dependientes en otra tabla. En la primera tabla se deja el atributo del que dependían los otros que será clave ajena a la nueva tabla.

Tema 8 Normalización

46 de 49

Ejercicio: Rellena los huecos que faltan en la clave ajena

Page 47: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

Tercera Forma Normal (3FN):Una relación está en 3FN si, y sólo si, está en 2FN y, además, cada atributo no clave no depende transitivamente de la clave primaria.

Tema 8 Normalización

47 de 49

Page 48: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

Tercera Forma Normal (3FN):

Se extraen los atributos dependientes en otra tabla. En la primera tabla se deja el atributo del que dependían otros que será claveajena a la nueva tabla

Tema 8 Normalización

48 de 49

Ejercicio: Rellena los huecos que faltan en la clave ajena

Page 49: BASES DE DATOS (IG18 Semipresencial) Diseño Lógico de ...

BASES DE DATOS (IG18 Semipresencial)Diseño Lógico de Bases de Datos Relacionales

¿DUDAS?

Lledó Museros / Ismael [email protected] / [email protected]

Tema 8

49 de 49