Pesquisa em com SQL

6 respostas Resolvido
java
D

Pessoal tenho uma aplicação em java SE com banco de dados PostgreSql onde tenho um campo de texto para pesquisa e um botão onde passo o seguinte SQL para pesquisar e listar minha pesquisa na minha JTable:

TabelaPesquisa("select * from exame_medico where aluno like '%" + txtPesquisar.getText() + "%'");//procura no banco e faz a pesquisa no e manda p tabela"

porém para esse SQL se eu tiver o aluno joão com “j” minusculo e pesquisar um J maiusculo ele não lista então queria que minha pesquisa pegasse tanto o nome ou caractete maiusculo quanto minuscula ou seja que joão e João seja a mesma coisa para pesquisa… quem poder ajudar agradeço muito…

6 Respostas

aix

Ola DeveloperS, use um uppercase no seu SQL e deixe seu txtPesquisar.getText() em caixa alta também com toUpperCase(), ou tudo em lowercase, ex:

TabelaPesquisa("select * from exame_medico where UPPER(aluno) like '%" + 
txtPesquisar.getText().toUpperCase() + "%'");
D

Obg pela resposta @aix mas coloquei no meu pgadmin:

select * from exame_medico where upper(aluno)like '%a%'

e ele não me retornou nada … encontra a tabela exame_medico mas não lista nada…

D

dei uma pesquisada como fazer e depois de um tempo encontrei funcionando como eu queria ou seja tenho um andré e um André mas so sql, como faço para juntar tudo no java meu co sql:

select * from exame_medico where UPPER(aluno) like '%' || upper ('an') || '%';

como coloco meu txtPesquisar.getText() nessa historia???

lucciano01
Solucao aceita

`o ILIKE verifica a string independente se maiúscula ou minúscula

(“select * from exame_medico where aluno ilike '%” + txtPesquisar.getText() + “%’”)
`

D

caracas batie tanta cabeço por causa de um " i " deu certo aqui obg @lucciano01 :slight_smile:

aix

o parâmetro também deve estar em caixa alta.

Criado 16 de março de 2016
Ultima resposta 16 de mar. de 2016
Respostas 6
Participantes 3