Problemas com query urgente

Delphi

22/06/2003

estou fazendo uma pesquisa por uma query.
na instrução SQL estou digitando:

SELECT *
FROM Evento
WHERE Status <> ´CONCLUIDO´
ORDER BY Numero

No evento on click de um button :

Begin
With DataModule1.qry1 do
begin
active := false;
SQL.Clear;
SQL.ADD(´SELECT *´);
SQL.ADD(´FROM Evento´);
SQL.ADD(´WHERE Status <> Concluido´);
SQL.ADD(´ORDER BY Numero´);
Active := True;
end;
end;

:cry: SO QUE NA FUNCIONA, TRAVA E DÁ A SEGUINTE MENSAGEM:

´INVALID FIELD NAME. CONCLUIDO´.

ALGUEM PODE ME AJUDAR????? :oops:


Dacunha

Dacunha

Curtidas 0

Respostas

Salomao

Salomao

22/06/2003

Tente assim!

Begin
With DataModule1.qry1 do
begin
active := false;
SQL.Clear;
SQL.text:=´SELECT * FROM Evento WHERE Status <> ´+#39+´Concluido´+39+´ ORDER bY Numero´;
Active := True;
end;
end;
Active := True;
end;
end;


espero ter ajudado!

salomaosoares@bol.com.br


GOSTEI 0
Moonlight

Moonlight

22/06/2003

talvez só colocar aspas no concluido resolve


GOSTEI 0
Cdaraujo

Cdaraujo

22/06/2003

Caro amigo,

Veja um exemplo simples:

Atenciosamente,

Daniel Araújo


procedure TForm1.Button1Click(Sender: TObject);
var
QryTmp: TQuery;
begin
QryTmp := TQuery.Create(nil);
try
with QryTmp, Sql do
begin
DataBaseName := //Nome do Alias
Add(´SELECT *´);
Add(´FROM Evento´);
Add(´WHERE Status <> ´´CONCLUIDO´´´);
Add(´ORDER BY Numero´);
Open;
end;
finally
QryTmp.Free;
end;
end;

estou fazendo uma pesquisa por uma query. na instrução SQL estou digitando: SELECT * FROM Evento WHERE Status <> ´CONCLUIDO´ ORDER BY Numero No evento on click de um button : Begin With DataModule1.qry1 do begin active := false; SQL.Clear; SQL.ADD(´SELECT *´); SQL.ADD(´FROM Evento´); SQL.ADD(´WHERE Status <> Concluido´); SQL.ADD(´ORDER BY Numero´); Active := True; end; end; :cry: SO QUE NA FUNCIONA, TRAVA E DÁ A SEGUINTE MENSAGEM: ´INVALID FIELD NAME. CONCLUIDO´. ALGUEM PODE ME AJUDAR????? :oops:



GOSTEI 0
Renaldo

Renaldo

22/06/2003

O problema é simples, vc não está colocando espaços no final de cada linha, assim o * fica grudado na palavra seguinte e a cada ADD que vc dá
o add seguinte fica colado no anterior, então sua Query está assim.

select *from EventoWHERE Status <> ConcluidoORDER BY Numero.

ERRADO:

SQL.ADD(´SELECT *´);
SQL.ADD(´FROM Evento´);
SQL.ADD(´WHERE Status <> Concluido´);
SQL.ADD(´ORDER BY Numero´);

CORRETO:
SQL.ADD(´SELECT *´ );
SQL.ADD(´FROM Evento ´);
SQL.ADD(´WHERE Status <> Concluido ´);
SQL.ADD(´ORDER BY Numero´);

Um abraço,
Renaldo


GOSTEI 0
Renaldo

Renaldo

22/06/2003

O problema é simples, vc não está colocando espaços no final de cada linha, assim o * fica grudado na palavra seguinte e a cada ADD que vc dá
o add seguinte fica colado no anterior, então sua Query está assim.

select *from EventoWHERE Status <> ConcluidoORDER BY Numero.

ERRADO:

SQL.ADD(´SELECT *´);
SQL.ADD(´FROM Evento´);
SQL.ADD(´WHERE Status <> Concluido´);
SQL.ADD(´ORDER BY Numero´);

CORRETO:
SQL.ADD(´SELECT *´ );
SQL.ADD(´FROM Evento ´);
SQL.ADD(´WHERE Status <> Concluido ´);
SQL.ADD(´ORDER BY Numero´);

Um abraço,
Renaldo


GOSTEI 0
Renaldo

Renaldo

22/06/2003

O problema é simples, vc não está colocando espaços no final de cada linha, assim o * fica grudado na palavra seguinte e a cada ADD que vc dá
o add seguinte fica colado no anterior, então sua Query está assim.

select *from EventoWHERE Status <> ConcluidoORDER BY Numero.

ERRADO:

SQL.ADD(´SELECT *´);
SQL.ADD(´FROM Evento´);
SQL.ADD(´WHERE Status <> Concluido´);
SQL.ADD(´ORDER BY Numero´);

CORRETO:
SQL.ADD(´SELECT * ´ );
SQL.ADD(´FROM Evento ´);
SQL.ADD(´WHERE Status <> Concluido ´);
SQL.ADD(´ORDER BY Numero´);

Um abraço,
Renaldo


GOSTEI 0
Renaldo

Renaldo

22/06/2003

O problema é simples, vc não está colocando espaços no final de cada linha, assim o * fica grudado na palavra seguinte e a cada ADD que vc dá
o add seguinte fica colado no anterior, então sua Query está assim.

select *from EventoWHERE Status <> ConcluidoORDER BY Numero.

ERRADO:

SQL.ADD(´SELECT *´);
SQL.ADD(´FROM Evento´);
SQL.ADD(´WHERE Status <> Concluido´);
SQL.ADD(´ORDER BY Numero´);

CORRETO:
SQL.ADD(´SELECT * ´ );
SQL.ADD(´FROM Evento ´);
SQL.ADD(´WHERE Status <> Concluido ´);
SQL.ADD(´ORDER BY Numero´);

Um abraço,
Renaldo


GOSTEI 0
Renaldo

Renaldo

22/06/2003

O problema é simples, vc não está colocando espaços no final de cada linha, assim o * fica grudado na palavra seguinte e a cada ADD que vc dá
o add seguinte fica colado no anterior, então sua Query está assim.

select *from EventoWHERE Status <> ConcluidoORDER BY Numero.

ERRADO:

SQL.ADD(´SELECT *´);
SQL.ADD(´FROM Evento´);
SQL.ADD(´WHERE Status <> Concluido´);
SQL.ADD(´ORDER BY Numero´);

CORRETO:
SQL.ADD(´SELECT * ´ );
SQL.ADD(´FROM Evento ´);
SQL.ADD(´WHERE Status <> Concluido ´);
SQL.ADD(´ORDER BY Numero´);

Um abraço,
Renaldo


GOSTEI 0
Renaldo

Renaldo

22/06/2003

O problema é simples, vc não está colocando espaços no final de cada linha, assim o * fica grudado na palavra seguinte e a cada ADD que vc dá
o add seguinte fica colado no anterior, então sua Query está assim.

select *from EventoWHERE Status <> ConcluidoORDER BY Numero.

ERRADO:

SQL.ADD(´SELECT *´);
SQL.ADD(´FROM Evento´);
SQL.ADD(´WHERE Status <> Concluido´);
SQL.ADD(´ORDER BY Numero´);

CORRETO:
SQL.ADD(´SELECT * ´ );
SQL.ADD(´FROM Evento ´);
SQL.ADD(´WHERE Status <> Concluido ´);
SQL.ADD(´ORDER BY Numero´);

Um abraço,
Renaldo


GOSTEI 0
Renaldo

Renaldo

22/06/2003

O problema é simples, vc não está colocando espaços no final de cada linha, assim o * fica grudado na palavra seguinte e a cada ADD que vc dá
o add seguinte fica colado no anterior, então sua Query está assim.

select *from EventoWHERE Status <> ConcluidoORDER BY Numero.

ERRADO:

SQL.ADD(´SELECT *´);
SQL.ADD(´FROM Evento´);
SQL.ADD(´WHERE Status <> Concluido´);
SQL.ADD(´ORDER BY Numero´);

CORRETO:
SQL.ADD(´SELECT * ´ );
SQL.ADD(´FROM Evento ´);
SQL.ADD(´WHERE Status <> Concluido ´);
SQL.ADD(´ORDER BY Numero´);

Um abraço,
Renaldo


GOSTEI 0
Renaldo

Renaldo

22/06/2003

O problema é simples, vc não está colocando espaços no final de cada linha, assim o * fica grudado na palavra seguinte e a cada ADD que vc dá
o add seguinte fica colado no anterior, então sua Query está assim.

select *from EventoWHERE Status <> ConcluidoORDER BY Numero.

ERRADO:

SQL.ADD(´SELECT *´);
SQL.ADD(´FROM Evento´);
SQL.ADD(´WHERE Status <> Concluido´);
SQL.ADD(´ORDER BY Numero´);

CORRETO:
SQL.ADD(´SELECT * ´ );
SQL.ADD(´FROM Evento ´);
SQL.ADD(´WHERE Status <> Concluido ´);
SQL.ADD(´ORDER BY Numero´);

Um abraço,
Renaldo


GOSTEI 0
POSTAR