PDA

Ver la Versión Completa : Problema al enlazar un dbgrid con dos querys diferentes


MiGuEJeReZ
16-06-2006, 15:46:21
A ver os presento mi problema..
estoy haciendo un programa sobre una escuela deportiva..
tengo un dbgrid enlazado a un queryjugadores... y entonces en ese dbgrid tengo todos los datos de los jugadores pero en el campo escuela.. q está enlazado a un queryescuela... me sale el numero de la escuela es decir el id_escuela q es la clave principal... pero yo kiero q me salga el nombre de escuela. pero a la hora de hacer el queryjugadores y añadir los datos al dbgrid ejecuto el programa y me dice q el campo nombre_escuela no lo encuentra.. pero lo tengo metido... como podria hacerlo??
muchas gracias de antemano

Neftali [Germán.Estévez]
16-06-2006, 16:01:48
Creo que lo que necesitas es hacer la JOIN en la consulta que utilizas para mostrar los datos en el Grid, de forma que te además de los datos de jugadores te traiga los que necesitas de escuela.
¿Lo estas haciendo así?
¿Puedes poner la consulta SQL que estás utilizando para obtener los datos?

MiGuEJeReZ
16-06-2006, 16:47:27
la consulta sql que estoy poniendo es la siguiente:

select * from jugadores,escuela
where jugadores.escuela = escuela.id_escuela


asi es como lo tengo exo no se si estará bien o mal...
q me aconsejais? gracias

MiGuEJeReZ
16-06-2006, 16:48:03
la base de datos está en mysql x si os puede aclarar en algo

MiGuEJeReZ
16-06-2006, 23:41:46
nadie sabe solucionar esto.. por favor lo necesito para un proyecto para el lunes :S

Neftali [Germán.Estévez]
19-06-2006, 09:43:18
select * from jugadores LEFT JOIN escuela
on jugadores.escuela = escuela.id_escuela


Esto te debería dar una consulta con todos los campos de jugadores y escuela; Luego en el grid añádelos todos y pon visibles los que te interesen.

kuan-yiu
19-06-2006, 12:49:00
También puedes hacerlo así:
Pones dos consultas: una para los jugadores y otra para la escuela. La de los jugadores la asocias al grid y en el campo de la query "id_escuela" enlazas la otra quey a través de la propiedad "LookupDataSet", pones en "LookupKeyFields" el campo clave ("id_escuela") y en "LookupResultField" el valor que quieres mostrar ("nombre_escuela").

MiGuEJeReZ
20-06-2006, 10:56:22
He hecho lo que me habeis dixo pero no sale :S lo he enlazado igual pero que va.. no hay manera... en el dbgrid esta enlazado con el query de jugadores y en el campo id_escuela del query le e enlazado el query de escuela con los campos tal y como poneis pero sigue sin salir :( gracias..