Consulta Sql FireBird

Delphi

13/06/2005

Quando executo essa consulta colocando o nome do cliente ela não retorna nenhum nome; quando coloco apenas uma letra, por exemplo, ´C´ ela retorna todos os nome que inicie com a letra ´C´. O que esta errado ?

procedure TF_Cadastro.BitBtn9Click(Sender: TObject);
begin
case rgr.ItemIndex of //rgr = RadioGroup ; qbcli = IBQuery
0: // Nome;
begin
qbcli.Close;
qbcli.SQL.Clear;
qbcli.SQL.Add(´Select * From TLBCLIENTES Where Nome Like :Nm´);
qbcli.ParamByName(´Nm´).AsString := msk.Text+ ´¬´;
qbcli.Open;

end;

Já tentei assim também:

qbcli.ParamByName(´Nm´).AsString := msk.Text;
qbcli.ParamByName(´Nm´).Value := msk.Text+ ´¬´;
qbcli.ParamByName(´Nm´).Value := msk.Text;

So funciona com a primeira letra digitada.


Jose

Jose

Curtidas 0

Respostas

Christian_adriano

Christian_adriano

13/06/2005

Olá colega,

tente o seguinte:


  with qbcli do begin
     Close; 
     SQL.Text := ´Select * From TLBCLIENTES Where Upper(Nome) LIKE upper(:Nm)´; 
     ParamByName(´Nm´).AsString := AnsiUpperCase(msk.Text+ ´¬´); 
     Open; 
  end; 


t+


GOSTEI 0
Macario

Macario

13/06/2005

Olá colega, tente da forma abaixo....


procedure TF_Cadastro.BitBtn9Click(Sender: TObject); begin case rgr.ItemIndex of //rgr = RadioGroup ; qbcli = IBQuery 0: // Nome; begin qbcli.Close; qbcli.SQL.Clear; qbcli.SQL.Add(´Select * From TLBCLIENTES Where Nome Like :Nm´); qbcli.ParamByName(´Nm´).AsString := [b:373a054da6]QuotedStr[/b:373a054da6](msk.Text)+[b:373a054da6]QuotedStr[/b:373a054da6]( ´¬´); qbcli.Open; end;


espero que ajude....


GOSTEI 0
Marcio.theis

Marcio.theis

13/06/2005

Se quiser ainda pode fazer desta forma:

procedure TF_Cadastro.BitBtn9Click(Sender: TObject); 
begin 
case rgr.ItemIndex of //rgr = RadioGroup ; qbcli = IBQuery 
0: // Nome; 
begin 
qbcli.Close; 
qbcli.SQL.Clear; 
qbcli.SQL.Add(´Select * ´);
qbcli.SQL.Add(´From TLBCLIENTES´);
qbcli.SQL.Add(´Where Nome Like :Nm´); 
qbcli.ParamByName(´Nm´).Value:=´¬´ + msk.Text + ´¬´; 
qbcli.Open; 
end; 



GOSTEI 0
Jose

Jose

13/06/2005

Obrigado pessoal.
Testei todos e esse funcionou legal

with qbcli do begin
Close;
SQL.Text := ´Select * From TLBCLIENTES Where Upper(Nome) LIKE upper(:Nm)´;
ParamByName(´Nm´).AsString := AnsiUpperCase(msk.Text+ ´¬´);
Open;
end;


GOSTEI 0
POSTAR