Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   problema con where y dos condiciones and (https://www.clubdelphi.com/foros/showthread.php?t=73150)

turbopascual5.0 04-04-2011 00:51:57

problema con where y dos condiciones and
 
Hola a todos. El siguiente código:

pregunta.SQL.Add('select * from linea_electro where id_el = :parametro and id_el<>0' ) ;
pregunta.SQL.Add(' and estado=');
pregunta.SQL.Add('Pendiente de recepción');

error sintaxis incorrecta cerca de de

he probado todo y no consigo que funcione.

Gracias de antemano

Caral 04-04-2011 01:05:49

Hola
Lo curioso es que haces una sentencia sql y el campo id_el lo defines con dos condiciones (= a parametro y <> 0).
La logica dice que si se da un parametro se podra definir que no sea = a 0.
Bueno:
Código Delphi [-]
pregunta.SQL.text:= 'select * from linea_electro where id_el = :P1 '+
                    ' and id_el <> :P2 '+
                    ' and estado = :P3 ';
Pregunta.Params[0].value:= Dato1;
Pregunta.Params[1].value:= 0;
Pregunta.Params[2].value:= 'Pendiente de recepción';
saludos

roman 04-04-2011 16:53:46

Cita:

Empezado por turbopascual5.0 (Mensaje 395694)
Hola a todos. El siguiente código:

pregunta.SQL.Add('select * from linea_electro where id_el = :parametro and id_el<>0' ) ;
pregunta.SQL.Add(' and estado=');
pregunta.SQL.Add('Pendiente de recepción');

Tu sentencia SQL queda así:

Código SQL [-]
select * from linea_electro where id_el = :parametro and id_el<>0
and estado=Pendiente de recepción

Aquí se ve más claro. Faltan las comillas que encierren a Pendiente de recepción

Entonces, puedes modificar la última línea de tu código así:

Código Delphi [-]
pregunta.SQL.Add('"Pendiente de recepción"');

// Saludos


La franja horaria es GMT +2. Ahora son las 16:42:36.

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