Ejemplo de Relaciones

13
Erik Sacre Bases de Datos Ejemplo de Relaciones Erik Sacre

Transcript of Ejemplo de Relaciones

Page 1: Ejemplo de Relaciones

Erik Sacre

Bases de DatosEjemplo de Relaciones

Erik Sacre

Page 2: Ejemplo de Relaciones

Erik Sacre

Ejemplo

• El siguiente ejemplo pretende mostrar como se almacenan los datos y como se relacionan entre si.

• Para su construcción, se uso un Modelo Conceptual de Datos, pero se eliminó de la vista las opciones típicas del CDM, y se reemplazó por la vista del campo “Comentarios” (Tools Display Preference Entity Comments). Por lo tanto, el diagrama siguiente no es un CDM y tampoco un PDM.

Page 3: Ejemplo de Relaciones

Erik Sacre

C_CA

Tener

Corresponder a

A_CA

Corresponder a

Tener

A_N

Tener

Corresponder a

Al_N

Corresponder a

Tener

CARRERA

#Cod_Car Nom_Car---------------------------------C1 Educaci nC2 Ingenier a■C3 Psicolog a■C4 An lisis£

ASIGNATURA

#Cod_Asi Nom_Asi_________________A1 AlgebraA2 CalculoA3 InglesA4 Programacion

CAR_ASI

#Cod_Car #Cod_Asi_____________________C1 A3C3 A3C2 A1C2 A2C4 A1C4 A2

ALUMNO

#Rut Nom_Alu______________10 Pedro20 Susana30 Juanita40 Pedro

NOTA

#Rut #Cod_Asi #Sem #Agno Nota_Final_____________________________________10 A1 I 2006 3,410 A2 I 2006 4,510 A1 II 2006 4,620 A1 I 2006 6,020 A4 I 2006 5,5

Aquí se muestranLos datos que podríaTener cada estructura.

Por ejemplo, Carrera tiene como atributos,Cod_Car y Nom_Car, su UID es Cod_Car,Y tiene 4 registros de datos, C1, C2, C3 y C4

Page 4: Ejemplo de Relaciones

Erik Sacre

Explicación

• Una Asignatura puede estar en muchas Carreras. Por ejemplo, Bases de Datos I, en alguna Universidad, podría pertenecer tanto a la malla curricular de Ingeniería de Ejecución como a Ingeniería Civil.

• De los Alumno se registra su Nota_Final en NOTA. Para ello, se considera su avance curicular por semestre y año, lo cual significa tomar en cuenta las repitencias.

Page 5: Ejemplo de Relaciones

Erik Sacre

Forma de “leerlo”

• Puede pasar de una estructura a otra por medio de los elementos en común (UID, PK, PkFk). En este ejemplo, los elementos comunes se llaman igual entre las estructuras, aún cuando no necesariamente debe ser siempre así.

Page 6: Ejemplo de Relaciones

Erik Sacre

Observaciones

Identifique las Entidades Fuertes y DébilesIdentifique la propagación de las UID o

Llaves (como el diagrama anterior no es ni un CDM ni un PDM, no se puede hablar directamente o de UID o de Llave).

Fíjese que para identificar una única tupla o registro en NOTA, se agrega a la llave o UID, el Semestre y el Agno.

Page 7: Ejemplo de Relaciones

Erik Sacre

Resolución

• Para las siguientes preguntas, identifique las estructuras de datos involucradas (ALUMNO, CARRERA, NOTA, ASIGNATURA, CAR_ASI), y sus relaciones que permiten resolver cada pregunta. Además, identifique si el modelo contesta las preguntas siguientes, sean estas verdaderas o falsas.

Page 8: Ejemplo de Relaciones

Erik Sacre

Preguntas…

• El Modelo permite contestar correctamente lo siguiente?– Obtener el nombre de la Carrera cuyo

cod_car = “C1”– Listar todas las asignaturas de la carrera “C2”– Listar todas las asignaturas de la carrera “C5”– Inglés es impartido en más de una carrera?– Cuantas asignaturas tiene Ingeniería?

Page 9: Ejemplo de Relaciones

Erik Sacre

Preguntas…

• Curso Pedro Algebra en el segundo semestre de 2006?

• Cual fue el promedio del curso de Algebra que se impartió en el primer semestre de 2006?

• Es posible obtener el promedio final de un alumno, en la carrera.

• Cuántos alumnos inscribieron Programación el primer semestre de 2007?

Page 10: Ejemplo de Relaciones

Erik Sacre

Preguntas

• A qué carrera pertenece “Pedro”?• Cuántos alumnos tiene la carrera

“Psicología”?• Una nota, la pueden tener más de un

alumno?• Se permiten alumnos que no estén

adscritos a una carrera?

Page 11: Ejemplo de Relaciones

Erik Sacre

Preguntas

• Si se eliminan todas las relaciones (tener, corresponder a) de todo el Modelo, es decir, solo quedan las estructuras con los datos (entidades) y se borran las líneas y las patas de gallo, ¿Es posible contestar las mismas preguntas anteriores?

Page 12: Ejemplo de Relaciones

Erik Sacre

Observaciones

• Hay preguntas que no se pueden contestar o se contestan equivocadamente.

• Esto se debe a que el Modelo no está construido para satisfacer esos requerimientos. En otras palabras, el Modelo no está bien construido. ¿Qué cambios le haría al Modelo?

Page 13: Ejemplo de Relaciones

Erik Sacre

Cambios

• Hay estructuras que tienen datos relativamente estables en el tiempo (CARRERA, ASIGNATURA, ALUMNO, CAR_ASI), y otras que se actualizan más constantemente (NOTA).

• Se suguiere relacionar estructuras estables entre si, y después, derivar aquellas menos estables. En este caso, es correcto relacionar los Alumnos con las Carreras. ¿Cómo lo haría?