fundamentos del diseño de base de datos y modelo entidad - relación

4
id nombre 1 Algebra 2 Calculo 3 Electrónica 4 Sistemas Clases id nombre 1 Juan 2 Pedro 3 Luis 4 Alfredo Personas Imagina una tabla con registros de “personas” y otra con registros de “aulas” (o clases). Las relaciones entre ambas tablas pueden ser: 1. 1:1 2. 1:N o N:1 3. N:N Relaciones entre tablas en una base de datos

Upload: juan-pablo-garcia-nieto

Post on 09-Aug-2015

427 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Fundamentos del diseño de base de datos y modelo entidad - relación

id nombre1 Algebra2 Calculo3 Electrónica4 Sistemas

Clasesid nombre

1 Juan2 Pedro3 Luis4 Alfredo

Personas

Imagina una tabla con registros de “personas” y otra con registros de “aulas” (oclases).

Las relaciones entre ambas tablas pueden ser:1. 1:12. 1:N o N:13. N:N

Relaciones entre tablas en una base de datos

Page 2: Fundamentos del diseño de base de datos y modelo entidad - relación

Opción 1: Opción 2:

Imagina que en el ejemplo anterior, las “personas” son “profesores”.Si cada “clase” tiene un solo “profesor” y cada profesor sólo puede dar una “clase”.

A nivel de diseño tienes dos posibles implementaciones:1. Añadir el “id” de la “clase” al registro de cada profesor.2. Añadir el “id” del “profesor” al registro de cada clase.

Profesores Clases1 1

Modelo entidad-relación:

id nombre id_profesor id nombre1 Algebra 4 1 Juan2 Calculo 2 2 Pedro3 Electrónica 1 3 Luis4 Sistemas 3 4 Alfredo

Clases Profesores

Relación 1:1

id nombre id_clase id nombre1 Juan 4 1 Algebra2 Pedro 2 2 Calculo3 Luis 1 3 Electrónica4 Alfredo 3 4 Sistemas

Profesores Clases

Page 3: Fundamentos del diseño de base de datos y modelo entidad - relación

Imagina que en el ejemplo anterior, las “personas” son “alumnos”.Si cada “alumno” sólo puede estar en una clase, tendremos que:- Una “clase” tiene muchos “alumnos” (N)- Un “alumno” sólo puede estar en una “clase” (1)A nivel de diseño eso se traduce en lo siguiente:

Nota:1. Vista desde “alumnos” es N:1: Cada alumno “1” clase, cada clase “N” alumnos2. Vista desde “clases” es 1:N: Cada clase “N” alumnos, cada alumno “1” clase.

Alumnos ClasesN 1

Modelo entidad-relación:

id nombre id_clase id nombre1 Juan 4 1 Algebra2 Pedro 4 2 Calculo3 Luis 4 3 Electrónica4 Alfredo 4 4 Sistemas

ClasesAlumnos

Nota: Fíjate que ahora no vale la opción deponer “id_alumno” en la tabla clase, puestoque en cada clase hay más de un alumno.

Relación 1:N o N:1

Page 4: Fundamentos del diseño de base de datos y modelo entidad - relación

Imagina que en el ejemplo anterior, las “personas” son “alumnos”.Si cada “alumno” sólo puede estar en varias “clases” y cada “clase” puede tenervarios “alumnos”.-Una clase tiene muchos alumnos (N)-Un alumno puede estar en varias clase (N)A nivel de diseño eso se traduce en lo siguiente:

Alumnos ClasesN N

Modelo entidad-relación:

Clasesid nombre id_alumno id_clase id nombre

1 Juan 1 4 1 Algebra2 Pedro 1 2 2 Calculo3 Luis 2 4 3 Electrónica4 Alfredo 2 2 4 Sistemas

Alumnos

Ejemplo: Juan va a clase de Cálculo y Sistemas.A clase de Cálculo van Juan y Pedro.

Relación N:N