O que tem de errado nesses codigos?? (Delphi AdoQuery)

Delphi

30/06/2004

oiee.. o que tem de errado nesses codigos?? :?:
muito obrigada..
abraçoss


procedure TForm3.Button1Click(Sender: TObject);

begin
with ADOQuery1 do //consulta por codigo
Begin
Close;
SQL.Clear;
SQL.Add(´SELECT * from Desc´);
SQL.Add(´Where Codigo = ´+Edit2.text);
Open;
end;
end;

------------------------------------





begin
with ADOQuery1 do //consulta por inicial de descricao
Begin
Close;
SQL.Clear;
SQL.Add(´SELECT * from Desc´);
SQL.Add(´Where Descricao LIKE ´*´+Edit1.text+´´ ´);
Open;
end;
end;


Fernanda Fonseca

Fernanda Fonseca

Curtidas 0

Respostas

Thomaz_prg

Thomaz_prg

30/06/2004

Com relação ao primeiro código, acho que a punica coisa de errado é a falta de um espaço. O código ficaria assim:

procedure TForm3.Button1Click(Sender: TObject); 
begin 
  with ADOQuery1 do Begin 
    Close; 
    SQL.Clear; 
    SQL.Add(´SELECT * from Desc ´); //espaço aki no final.
    SQL.Add(´Where Codigo = ´+Edit2.text); 
    Open; 
  end; 
end; 


Também lembrando que este código funciona se o campo [b:8e7ff5f334]CODIGO[/b:8e7ff5f334] for um número (inteiro, float, autoinc).
Com relação à segunda parte, acho que é a falta das aspas.

begin 
  with ADOQuery1 do Begin 
    Close; 
    SQL.Clear; 
    SQL.Add(´SELECT * from Desc ´);
    SQL.Add(´Where Descricao LIKE "*´+Edit1.text+´"´); 
    Open; 
  end; 
end;


Mas se eu entendi direito, no código acima vc quer que sejam retornados os campos que contenham em seu inicio, o conteudo de [b:8e7ff5f334]Edit1.text[/b:8e7ff5f334]. Se for isso o codigo poderia ser colocado da seguinte forma.

begin 
  with ADOQuery1 do Begin 
    Close; 
    SQL.Clear; 
    SQL.Add(´SELECT * from Desc ´);
    SQL.Add(´Where Descricao LIKE "´+Edit1.text+´¬"´); 
    Open; 
  end; 
end;


ou , para que retorne os registros em que o valor de [b:8e7ff5f334]Edit1.text[/b:8e7ff5f334] esteja em qualquer parte de [b:8e7ff5f334]Descricao[/b:8e7ff5f334] faça assim:

SQL.Add(´Where Descricao LIKE "¬´+Edit1.text+´¬"´);



GOSTEI 0
Mariocanel

Mariocanel

30/06/2004

no seu select onde foi o nome da tabela?

SQL.Add(´SELECT * from ? Desc´);
no lugar do ´?´ coloque o nome da tabela


GOSTEI 0
Bon Jovi

Bon Jovi

30/06/2004

[quote:1590c2e3ad=´Fernanda B. Fonseca´]oiee.. o que tem de errado nesses codigos?? :?: [/quote:1590c2e3ad]

Mas qual msg de erro é retornada??


GOSTEI 0
POSTAR