FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Mostrar en un DBGRID Relacion Muchos Muchos
Es un juego de rol...
El Nivel de habilidades de los personajes son: id=descripcion 1=Malo 2=Regular 3=Bueno tanto el numero como su descripcion me son necesarios guardar en la base de datos y por lo tanto uso dos tablas: TABLA 1 personajes: id_personaje (Entero) nombre (Cadena) id_habilidad_volar (Entero) id_habilidad_saltar (Entero) id_habilidad_correr (Entero) TABLA 2 habilidades: id_habilidad (Entero) descripcion (Cadena) y armo un DBGrid, y quiero que me muestre el personaje, y el nivel de su habilidad: El DBGrid se ve asi: ||| Personajes ||| Habilidad Volar ||| ||| Mago ||| Regular ||| ||| Guerrero ||| Malo ||| ||| Hada ||| Bueno ||| Codigo: Código:
SELECT nombre, id_habilidad_volar, habilidades.descripcion FROM personajes INNER JOIN habilidades ON personajes.id_habilidad_volar = habilidades.id_habilidad ORDER BY nombre ||| Personajes ||| Habilidad Volar ||| Habilidad Saltar ||| Habilidad Correr ||| ||| Mago ||| Regular ||| Malo ||| Bueno ||| ||| Guerrero ||| Malo ||| Bueno ||| Regular ||| ||| Hada ||| Bueno ||| Malo ||| Bueno ||| y aqui no se como plantearlo... la solucion rapida es usar un StringGrid y cargar los datos uno por uno XD pero creo que podria hacer una consulta SQL que me permitiera hacer esto en un solo paso. ¿Alguna Sugerencia? Gracias!
__________________
"It's nice to be important, but it's more important to be nice" Última edición por dmassive fecha: 11-02-2009 a las 13:11:58. |
#2
|
||||
|
||||
Utiliza tres veces la tabla HABILIDADES en la SQL haciendo INNER JOIN con la tabla PERSONAJES, pero utilizando Alias junto a la tabla, para que la consulta salga correctamente.
De paso una una Alias para PERSONAJES (p).
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#3
|
||||
|
||||
Algo así:
Pruebalo, tal vez me de dejado algo...
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#4
|
||||
|
||||
Probe utilizando alias, primero con uno y va bien:
Pruebo añadir una segunda habilidad y da error: El Error es: Cita:
__________________
"It's nice to be important, but it's more important to be nice" |
#5
|
||||
|
||||
¿Qué base de Datos utilizas?
¿Has probado a lanzar la consulta directamente a la Base de Datos?
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#6
|
||||
|
||||
La base de datos esta hecha con MS Access 2003, corriendo Delphi 7 usando ADO.
Pero efectivamente la consulta funciona, porque la probe con MySQL (con PHP) y PySQLite (con Python) y da lo resultados que quiero... pero en Access no le encuentro la vuelta.
__________________
"It's nice to be important, but it's more important to be nice" |
#7
|
||||
|
||||
Luego de mucho buscar consultas SQL en access encontre algo en este thread que me sirvio como guia para intentar resolver este tema.
La solucion era anidar los INNER JOIN con parentesis por la tanto la consulta queda asi:
Muchas Gracias Neftali por tu ayuda!
__________________
"It's nice to be important, but it's more important to be nice" |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Tipo relación de 0 a muchos en Accesss | jlrbotella | SQL | 6 | 21-09-2007 15:57:56 |
Problemas con generadores en relacion Muchos-a-Muchos | Hagen | Firebird e Interbase | 3 | 30-10-2006 16:47:51 |
Relacion Muhcos a muchos | Sito | Conexión con bases de datos | 1 | 11-04-2006 13:25:29 |
UPDATE en una relacion 1 a Muchos... | JorgeBec | SQL | 4 | 19-11-2004 20:16:37 |
Consulta SQl, relacion 1 a muchos | Walter | SQL | 3 | 15-07-2003 03:13:28 |
|