PDA

Ver la Versión Completa : Relacionar 3 tablas


NISOTO
22-04-2012, 04:28:59
Hola a todos,
Tengo 3 tablas en Interbase y delphi

Alumnos:

IDAlumno *
Nombre
Apellido
IDCurso
...

Calificaciones:

IDCalificaciones *
Año
Jornada
IDAlumno
IDCurso
IDDocente
IDMateria
Nota1p
Falla1p
Concepto
Logro1p1
Logro1p2
Logro1P3

Cursos:
IDCurso *
Nombre

Lo que necesito es que cuando elija un salon me aparezcan en un DbGrid todos los alumnos pertenecientes a este y pueda llenar todos los campos osea las calificaciones.


Como relaciono las tres tablas.

Casimiro Notevi
22-04-2012, 11:06:32
Tengo 3 tablas
Alumnos:
Calificaciones:
Cursos:
Lo que necesito es que cuando elija un salon me aparezcan en un DbGrid todos los alumnos pertenecientes a este y pueda llenar todos los campos osea las calificaciones.
Como relaciono las tres tablas.

¿Hola, y "salon" es otra tabla?

NISOTO
23-04-2012, 03:32:39
Claro, el asterisco delante de cada campo indica el indice.

mightydragonlor
23-04-2012, 04:01:09
Alumnos:

IDAlumno *
Nombre
Apellido
IDCurso
...

Calificaciones:

IDCalificaciones *
Año
Jornada
IDAlumno
IDCurso
IDDocente
IDMateria
Nota1p
Falla1p
Concepto
Logro1p1
Logro1p2
Logro1P3

Cursos:
IDCurso *
Nombre



Pues si no existe el salón en alguna de las tablas, dudo que sea posible.

NISOTO
23-04-2012, 04:49:21
El salon es el campo IDCurso en la tablas Alumnos, Calificaciones, y Cursos

ecfisa
23-04-2012, 08:50:47
Hola NISOTO.
Lo que necesito es que cuando elija un salon me aparezcan en un DbGrid todos los alumnos pertenecientes a este ...
Creo que podrías hacer:

SELECT A.NOMBRE,
A.APELLIDO,
B.ANIO,
B.JORNADA,
B.NOTA1P,
B.FALLA1P,
B.CONCEPTO,
B.LOGRO1P1,
...
FROM ALUMNOS A, CALIFICACIONES B, CURSOS C
WHERE A.ID = B.IDALUMNO
AND A.IDCURSO = C.ID
AND C.ID = :SALON


Saludos.

Casimiro Notevi
23-04-2012, 09:32:09
El salon es el campo IDCurso en la tablas Alumnos, Calificaciones, y Cursos

Bien, es que como se nos averió la bola de cristal ;)
Ahora está claro :)

NISOTO
23-04-2012, 18:46:49
Excelente primo.

Es la primera vez que interactuó en este foro y solucionaron mi problema, te agradezco mucho la ayuda…