problemas con claves foraneas

Iniciado por Aeros, 13 Julio 2010, 13:12 PM

0 Miembros y 1 Visitante están viendo este tema.

Aeros

hola que tal

espero que me ayuden :D

Tengo las siguientes 3 tablas:

Alumnos:
id
Nombre
Matricula
Dni

Profesor:
id
Matricula
Nombre
Dni


Curso:
id
Fecha inicio
Fecha Fin
Cantidad de vacantes
Profesor curso


Mi pregunta es la siguiente :
1ro_estoy en lo cierto si  solo tengo que crear 2 claves foraneas  en alumno y profesor refiriendo a curso? si solo tengo q hacer estas 3 consultas:

- Implementar una solución que permita dar de alta un alumno en un curso dado,  siempre y cuando haya vacantes
- Listar alumnos (sus datos personales y todos los cursos a los que está inscripto)
- Listar profesores (sus datos personales y todos los cursos que dicta)


2do_ las claves foraneas se crean con otro campo adicional? o puede usarse los q estan??

gracias :P

Novlucker

Buenas

1ero_ No estas en lo cierto :-X Curso debe de llevar ID de profesor, profesor no lleva ID de curso.
¿Por qué? Porque un profesor puede dictar varios cursos ("sus datos personales y todos los cursos que dicta")
Con los alumnos pasa igual, un alumno puede estar inscripto a varios cursos ("sus datos personales y todos los cursos a los que está inscripto").
En el caso de los profesores, entiendo que un curso lo dicta un solo profesor, por lo que con que la tabla "Curso" lleve como foranea "id profesor" alcanza, pero para el caso de los alumnos hace falta otra tabla.

2do_ No entendí :xD

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Aeros

Cita de: Novlucker en 13 Julio 2010, 13:55 PM
pero para el caso de los alumnos hace falta otra tabla.

2do_ No entendí :xD

Saludos

que otra tabla no entendi :(

y la segunda pregunta ya me la contestaste sin querer xDD, formule mal la pregunta :P

Novlucker

Tienes una entidad "Cursos" y otra "Alumnos" y la relación es de N a N, por lo que necesitas una tabla "Inscripciones" o algo similar:
Inscripciones:
id alumno
id curso


Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Aeros

Cita de: Novlucker en 13 Julio 2010, 14:11 PM
Tienes una entidad "Cursos" y otra "Alumnos" y la relación es de N a N, por lo que necesitas una tabla "Inscripciones" o algo similar:
Inscripciones:
id alumno
id curso


Saludos

entiendo pero no entiendo porque dijiste esto:

CitarCon los alumnos pasa igual, un alumno puede estar inscripto a varios cursos ("sus datos personales y todos los cursos a los que está inscripto").

entonces la relacion no es de n a muchos??

Novlucker

n = muchos :P
Un alumno puede estar en muchos cursos, y un curso puede tener muchos alumnos, es de n a n :P

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

Aeros