Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/05/2004, 11:23
Avatar de u_goldman
u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 4 meses
Puntos: 98
"Un profesor, puede impartir muchas asignaturas"
"Una asignatura puede ser impartida por muchos profesores"

muchos ----- muchos

"Un alumno cursa muchas asignaturas"
"Una asignatura es cursada por muchos alumnos"

muchos ------ muchos

Por definición en este tipo de realación se crea una tabla de cada uno de los conceptos(2 tablas) y una tabla más de relación, por lo tanto...

id_asignatura | nombre_asignatura
1 Matemáticas
2 Literatura Universal
3 Bases de Datos relacionales

id_profesor | Nombre Profesor
1 Juan
2 Diego
3 Martin
4 Pedro

Y la tabla de relación que tiene que involucrar los ids para relacionar

asignatura_profesor

id_profesor | id_asignatura
1 2
1 3
2 2
3 1
3 2
3 3

Ahora si te pido que me traigas los profesores que imparten Bases de Datos Relacionales me puedes decir que la materia tiene el id 3 y es impartida por el profesor 1 y 3, los cuales responden a los nombres de Juan y Martin.

Pero también te puedo pedir que me traigas las materias que imparte además Martin, en la tabla de relación me puedes decir que imparte las materias 1, 2 y 3 que corresponden a los nombres de la tabla asignaturas que tengan dichos id's.
De esta manera eliminas la redundancia en tu DB y solo extraes a partir de cualquier dato dado.

je je, espero haberlo hecho bien


Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway