Pesquisa no BD

6 respostas
leandrovrb

ola pessoal estou utilizando uma pesquisa so que tenho q digitar o nome completo para achar no BD e da retorno numa textField, ou jtable, em delphi eu utilizava o %, so que qdo eu coloco isto no java nao aceita, e no MysqlFront aceita a pesquisa…
exemplo: Se vou digitar l lista todos l se eu fizer assim

select * from clientes where nome like 'l%'

pelo NetBeans nao consigo fazer isto,qdo coloco o % da erro e olhe que coloquei assim e nao deu certo:

String sql= ("select * from clientes where nomeCli like "+tfPesquisa.getText()+'%'); String sql= ("select * from clientes where nomeCli like "+tfPesquisa.getText()+"%"); String sql= ("select * from clientes where nomeCli like "'+tfPesquisa.getText()%');

diz que da erro no %!!!

Vlw

6 Respostas

ricardosoares

tente

String sql= ("select * from clientes where nomeCli like "+tfPesquisa.getText()+"\%");
furutani

Ou tente

String sql= ("select * from clientes where nomeCli like "+tfPesquisa.getText()+ "'%'");
wandersonxs

Acho q as duas respostas acima faltaram o ’

String sql= ("select * from clientes where nomeCli like '"+tfPesquisa.getText()+"%'");

Abraços
Wanderson 8)

Marky.Vasconcelos

E se a palavra for em qualquer lugar voce faz:

LIKE ‘%palavra%’

Andre_Brito

Outra solução é usar expressões regulares, como os operadores “~*”, pra ignorar as maiúsculas e minúsculas.

deniswsrosa

Só justificando o erro, para o java o valor ‘1’ ou ‘T’ ou qualquer coisa entre aspas simples representa um char, o erro acontece pq tenta concatenar um char com uma string, e como no fundo um char nada mais é q um inteiro tem q dar este erro mesmo.

Criado 8 de dezembro de 2008
Ultima resposta 8 de dez. de 2008
Respostas 6
Participantes 7