Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Error con una consulta en delphi (https://www.clubdelphi.com/foros/showthread.php?t=34458)

zvf 10-08-2006 00:13:59

Error con una consulta en delphi
 
HOLA!!

Escribi la siguiente consulta en delphi:

Código Delphi [-]
consulta := 'SELECT `EQUIPOS.num_tienda`,`REPARACION.Desc_problema`
FROM `REPARACION` LEFT JOIN equipos on equipos.Id = reparacion.Id_equipos 
WHERE `tienda.num_serie` = 
'+ #39 + LBEquipos.Items.Strings[LBEquipos.ItemIndex] + #39 +';';

Esto me marca un error al ejectuarse, dice que la columna Equipos.num_tienda no existe, pero si existe, saben que hice mal?

Y otra cosa, Como puedo hacerle para que me seleccione todos los campos de la tabla de REPARACION y no nada mas Desc_problema, como en el ejemplo? Se escribe: REPARACION.*?

GRACIAS POR SU AYUDA

nemesio 10-08-2006 05:23:36

Hola

Lo que quieres lo puedes hacer asi

Código SQL [-]
SELECT * FROM REPARACION WHERE...

Saludos

vtdeleon 10-08-2006 07:20:28

Cita:

Esto me marca un error al ejectuarse, dice que la columna Equipos.num_tienda no existe, pero si existe, saben que hice mal?
Puede ser por la comilla simple. Quitalas!

Lepe 10-08-2006 09:57:41

Sustituye la comilla tipográfica por comillas dobles, y aparte, al ocupar más
de una linea el texto, tienes que concatenerlo con el operador "+"

En principio yo no pondría todo encerrado en comillas dobles... pero en fins... puede que te lo pida, no sé.

Código Delphi [-]
consulta := 'SELECT "EQUIPOS.num_tienda","REPARACION.Desc_problema" '+
'FROM "REPARACION" LEFT JOIN equipos on equipos.Id = reparacion.Id_equipos '+
'WHERE "tienda.num_serie" = '+
 #39 + LBEquipos.Items.Strings[LBEquipos.ItemIndex] + #39 +';';

Saludos

zvf 10-08-2006 20:19:57

Lo puse asi:

Código Delphi [-]
consulta := 'SELECT "EQUIPOS.num_tienda","REPARACION.Desc_problema" '+
'FROM `EQUIPOS` LEFT JOIN `REPARACION` on "REPARACION.Id_equipos" = "EQUIPOS.Id" '+
'WHERE "EQUIPOS.num_serie" = '+ #39 + LBEquipos.Items.Strings[LBEquipos.ItemIndex] + #39 +';';

y ya no me marca error, pero ahora, el problema es que no me regresa nada y no se si la relacion este bien, vean yo tengo dos tablas:

EQUIPOS REPARACION
Id Id_equipos
num_tienda Desc_problema
num_serie

De estas, Equipos.Id es igual al campo Reparacion.Id_equipos; y yo quiero que me regrese el campo REPARACION.Desc_problema y el campo EQUIPOS.num_tienda en donde
EQUIPOS.num_serie = LBEquipos.Items.Strings[LBEquipos.ItemIndex]

Si esta bien hecha la consulta?

GRACIAS

vtdeleon 10-08-2006 20:33:32

El campo "EQUIPOS.num_serie" es Alfanumerico o Numerico?

Obviando lo anterior, te aseguraste qeu el valor del ListBox (LBEquipos) coincide con el campo?

Saludos

zvf 11-08-2006 01:58:04

El campo num_serie es un string.

Y si coincide con el campo el num_serie, por eso no se si este mal hecha mi consulta.

vtdeleon 11-08-2006 06:25:04

Hmm, bueno.
Pon un ShowMessage(Query1.sql.Text) antes de Open, para qeu veas como va la consulta.

Saludos


La franja horaria es GMT +2. Ahora son las 04:00:17.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi