Pesquisa SQl, Minusculo e maiusculo

Delphi

07/08/2003

Ola tenho uma pesquisa dessa forma:


   with IBPROD do
    begin
      SQL.Clear;
      SQL.Add(´select CODBARRA, DESCRICAO, DESCRIRAPIDA, ESTOQUE, VALVENDA from ´+
              ´ PRODUTOS WHERE DESCRICAO like ´´´+Edit2.text+´¬´´ order by DESCRICAO´);
      Open;
    end;


Estou com problemas pois meu banco de dados é a junção de dois bancos, ou seja eu tenho registros no qual o campo DESCRICAO esta todo em maiusculo e tenho registros que estão em minusculos dai tenho problemas pois os em maiusculos ele apenas pesquisa se eu digitar no Edit2 tudo maiusculo .... alguém pode me ajudar? Preciso de algo que nem o LoCaseInsensitive do Locate ...

Valeu


Fer

Fer

Curtidas 0

Respostas

Joilson_gouveia

Joilson_gouveia

07/08/2003

Force a edição do Edit2 ser maiúscula.
Depois, substitua seu código pelo código abaixo:

with IBPROD do
begin
SQL.Clear;
SQL.Add(´select CODBARRA, DESCRICAO, DESCRIRAPIDA, ESTOQUE, VALVENDA from ´+
´ PRODUTOS WHERE [b:bbfad2f2e6]UCASE(DESCRICAO)[/b:bbfad2f2e6] like ´´´+Edit2.text+´¬´´ order by DESCRICAO´);
Open;
end;


GOSTEI 0
Fer

Fer

07/08/2003

Não deu certo ... não existe UCASE, tentei Upper e não deu =(


GOSTEI 0
Midas

Midas

07/08/2003

Não deu certo ... não existe UCASE, tentei Upper e não deu =(

cara eu não testei mas tente passar o parametro como maiuscula tambem ...
params[0].AsString:=+´¬´+UpperCase( editfitas.Text)+´¬´;

entende ? acho que o problema é que o campo na sql esta maiusculo e vc esta passando um parametro maiusculo e minusculo .. se vc passar tanto o campo quanto o parametro maiusculo acredito que dê certo .


GOSTEI 0
Midas

Midas

07/08/2003

[quote:9884ddacce=´FeR´]Não deu certo ... não existe UCASE, tentei Upper e não deu =(

cara eu não testei mas tente passar o parametro como maiuscula tambem ...
params[0].AsString:=+´¬´+UpperCase( editfitas.Text)+´¬´;

entende ? acho que o problema é que o campo na sql esta maiusculo e vc esta passando um parametro maiusculo e minusculo .. se vc passar tanto o campo quanto o parametro maiusculo acredito que dê certo .[/quote:9884ddacce]

É verdade ele dá erro dizendo que não existe a coluna .. porem fiz testes aqui e basta utilizar o upper no campo da condição ...

with query do
begin
close;
sql.clear;
sql.add(´ select desc_prod from produto where upper(desc_prod) like :param´);
params[0].asstring:=uppercase(edit1.text)+´¬´;
open;
end;


GOSTEI 0
POSTAR