Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   busqueda con un query (https://www.clubdelphi.com/foros/showthread.php?t=5238)

davidgaldo 13-11-2003 22:39:31

busqueda con un query
 
hola a todos, alguien puede decirme pq la consulta sql, sólo me busca por puesto específico??, y cual sería la solución?


query1.sql.clear;
query1.sql.Add('SELECT JUGADORES.NOMBRE FROM jugadores inner join historial_jugadores on (jugadores.nombre=historial_jugadores.nombre) where (jugadores.PUESTO_ESPECÍFICO=:PUESTO_ESPECÍFICO and historial_jugadores.CATEGORÍA=:CATEGORÍA)');
Query1.Params[0].AsString := 'CATEGORÍA';
Query1.Params[1].AsString := 'PUESTO_ESPECÍFICO';
QUERY1.ACTIVE:=TRUE;
QUERY1.CLOSE;
QUERY1.PARAMBYNAME('CATEGORÍA').ASSTRING:=COMBOBOX1.Text;
QUERY1.PARAMBYNAME('PUESTO_ESPECÍFICO').ASSTRING:=COMBOBOX3.Text;
QUERY1.OPEN;

ramiretor 13-11-2003 23:36:24

Hola, le estas pasando al query con la expresion:
Query1.Params[1].AsString := 'PUESTO_ESPECÍFICO';
el valor del parámetro debes quitar las expresiones:

Query1.Params[..].ASstring...
y
QUERY1.ACTIVE:=TRUE;
y seguir con lo que tienes
Close;
....

espero te sirva

saludos a todos


:D :D

davidgaldo 13-11-2003 23:47:46

Si te he entendido bien, me dices que solo con quitar las lineas

Query1.Params[0].AsString := 'CATEGORÍA';
Query1.Params[1].AsString := 'PUESTO_ESPECÍFICO';
QUERY1.ACTIVE:=TRUE;

me llegaría, pero lo he probado y sigue igual, solo busca por puesto específico, mas bien, creo que los busca todos, a nos ser que el valor de categoría no lo tenga nadie, en ese caso no encuentra nada.

ramiretor 14-11-2003 02:14:09

Hola:
Mira lo que pasa es que en tu primer mensaje esas las lineas que dices estaban de más porque luego pasabas el valor de los parametros al query.
Lo que puede estar pasando pueden ser dos razones: la primera es que el valor Categoria no lo tenga nadie como tú bien lo dices; la segunda que el innerjoin te esté condicionando la consulta al no encontrar valores en la segunda tabla


saludos

:D :D


La franja horaria es GMT +2. Ahora son las 14:40:46.

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