Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   problemas con sentencia..error token unknown (https://www.clubdelphi.com/foros/showthread.php?t=45551)

BlueSteel 06-07-2007 18:43:59

problemas con sentencia..error token unknown
 
Saludos a todos..

tengo que hacer un filtro de unos registros, en donde el estado sea igual a "E" , para lo cual trabajo con Interbase 6, y un componente IBQuery

Es campo esta definido como VarChar(1)

la realizo de la siguiente forma
Código Delphi [-]
     IBQ_Mostrar.Close;
     IBQ_Mostrar.SQL.Clear;
     IBQ_Mostrar.SQL.Add('Select * From "Cheque" Order By "Che_Nro"');
     IBQ_Mostrar.SQL.Add('Where "Che_Estado"=:Var1');
     IBQ_Mostrar.Params[0].AsString := 'E';
     IBQ_Mostrar.Open;

tambien prove cambiando lo siguiente
Código Delphi [-]
     IBQ_Mostrar.SQL.Add('Where "Che_Estado"=:Var1');
por
Código Delphi [-]
     IBQ_Mostrar.SQL.Add('Where "Che_Estado"=Var1');
pero tambien me da otro error...

el error que me aparece es

SQL erro code = -104
Token unknown - line 2, char -1
Where'


que podrá ser... o como puedo realizar la consulta para que me funcione :confused: :confused: :confused:

roman 06-07-2007 18:59:28

¿Para qué son las comillas alrededor de los nombres de campos? ¿Son necesarias? ¿Qué pasa si pones la consulta sin ellas?

Código SQL [-]
Select * From Cheque Order By Che_Nro
Where Che_Estado=:Var1

// Saludos

egostar 06-07-2007 19:11:18

Con riesgo de ser lapidado, además de las comillas me pregunto si el WHERE no va antes del ORDER BY.

Salud OS

roman 06-07-2007 19:13:21

Je, je, tienes toda la razón. Seguramente se debe a eso :)

// Saludos

BlueSteel 06-07-2007 21:10:44

mil gracias... :D :D

se me le fue..:p :p

lo de las comillas, es por que no me las tomas de otra forma... y si.. era por el Order by...jajaja..

eso de olvidarse.... parece que la memoria ultimamente esta fallando...tendré que ir volando a comprar más ram...:cool:

rastafarey 11-07-2007 20:36:57

resp
 
Lo de las comillas es si usas dialecto 3 y si usas nombres con mayúsculas y minúsculas o espacios en blanco dentro de la nombres de campos y tablas.

bueno la explicación mas técnica no es exactamente esa.

No le voy a echar el cuento de la diferencia entre dialecto tres y uno y como hace el manejado para diferenciar uno de otro y por que establecieron los las dobles comillas.


La franja horaria es GMT +2. Ahora son las 15:50:45.

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