Fórum Consulta usando o LIKE #368150
04/02/2009
0
Então preciso de uma ajuda.
Tenho um sistema que faz uma busca e estou usando essa rotina para executar essa busca
DM.ClientDataSet_PRODUTO_visual.Close;
DM.SQLDataSet_PRODUTO_visual.Close;
DM.SQLDataSet_PRODUTO_visual.CommandText := ´select COD_REFERENCIA, N_REGISTRO, DESCRICAO from TABELA_PRODUTO´;
Expressao := ´ where ´;
DM.SQLDataSet_PRODUTO_visual.CommandText := DM.SQLDataSet_PRODUTO_visual.CommandText + Expressao + ´ COD_REFERENCIA = ´´´+ N_produto.Text+´´´´;
Expressao := ´ and ´;
DM.ClientDataSet_PRODUTO_visual.Open;
eu queria uma rotina com o like mas já tentei aqui e até agora não ta dando, essa é a minha rotina com o like e não está me retornando nada
DM.Query_Produto_visual.Close;
DM.Query_Produto_visual.SQL.Clear;
DM.Query_Produto_visual.SQL.Add(´select * from tabela_produto where descricao like :x1´);
DM.Query_Produto_visual.ParamByName(´x1´).AsString := ´¬´ + descricao.Text + ´¬´;
DM.Query_Produto_visual.Open;
alguem poderia me ajudar quanto a esse problema ou me passar uma rotina com o like.
Ahh tambem queria saber se tem como quando eu efetuar a consulta ele não diferenciar maiuscula e minuscula isso teria como, pois meu banco tem informações maiuscula e minuscula.
Galera fico no aguardo.
Cleiflavio
Curtir tópico
+ 0Posts
04/02/2009
Vitor Alcantara
tenta isso:
DM.Query_Produto_visual.SQL.Add(´select * from tabela_produto where descricao like ´´¬´´ + :x1 + ´´¬´´ ´ );
DM.Query_Produto_visual.ParamByName(´x1´).AsString := descricao.Text
;
DM.Query_Produto_visual.Open;
Se o banco de dados for Firebird o sinal de concatenização é || em vez de +.
Dai ficaria assim:
DM.Query_Produto_visual.SQL.Add(´select * from tabela_produto where descricao like ´´¬´´ || :x1 || ´´¬´´ ´ );
Ps : Não testei.
Gostei + 0
04/02/2009
Cleiflavio
Tentei essa dica que vc deu e não está dando certo.
o parametro X1 ele não está encontrando.
Gostei + 0
04/02/2009
Cleiflavio
Dessa Maneira
M.ClientDataSet_PRODUTO_visual.Close;
DM.SQLDataSet_PRODUTO_visual.Close;
DM.SQLDataSet_PRODUTO_visual.CommandText := ´select COD_REFERENCIA, N_REGISTRO, DESCRICAO from TABELA_PRODUTO´
DM.SQLDataSet_PRODUTO_visual.CommandText := DM.SQLDataSet_PRODUTO_visual.CommandText + Expressao + ´ DESCRICAO LIKE ´ + QuotedStr(´¬´ + descricao.Text + ´¬´); // + descricao.Text+´´´´; //
DM.ClientDataSet_PRODUTO_visual.Open;
Acabei não usando a Query e deu certo, atende perfeitamente oq eu estava precisando.
Valeuu pela ajuda
Gostei + 0
04/02/2009
Cleiflavio
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)