Como criar um campo de pesquisa em banco de dados no projeto?
8 respostas
alexandref93
Bem galera, tipo, eu jah tenho um banco de dados criados, um JFrame para cadastro de cliente, outro para listar o cliente jah cadastro etc, mais tipo, como faço tipo, tem um campo de texto lá, escrevo o primeiro nome, e clico no botão pesquisar, pra ele apenas listar os nomes de acordo com a minha pesquisa???
Crie uma listagem de resultados pra isso, um método que te retorne um List< T >. A magica está no sql que você vai colocar:
publicList<String>getListaBusca(Stringvalor){PreparedStatementstmt=this.con.prepareStatement("select * from suaTabela where seuCampo like '%"+valor+"%'");//% significa qualquer coisa. se colocar antes do valor, é qualquer coisa antes + valor, se colocar depois, qualquer valor depois do valor...}
deu pra pegar?
ah, detalhe. essa é a única forma que eu conheço, mas também sou novo com bds :roll:
alexandref93
andre.froes:
Crie uma listagem de resultados pra isso, um método que te retorne um List< T >. A magica está no sql que você vai colocar:
publicList<String>getListaBusca(Stringvalor){PreparedStatementstmt=this.con.prepareStatement("select * from suaTabela where seuCampo like '%"+valor+"%'");//% significa qualquer coisa. se colocar antes do valor, é qualquer coisa antes + valor, se colocar depois, qualquer valor depois do valor...}
deu pra pegar?
ah, detalhe. essa é a única forma que eu conheço, mas também sou novo com bds :roll:
bem, do seu primeiro exemplo, esse método eu aplico no botão pesquisar correto???
A
andre.froes
isso, quando você clicar no botão pesquisar, o seu método vai receber e retornar o list com os valores que tu ta procurando
alexandref93
bem, eu apliquei esse método dentro do ActionEvent do botão, tá certo o método???
por que aqui não tá funfando!!!
A
andre.froes
tu tem que ver o que tu quer que retorne. Por exemplo, aquele metodo de retorna um List de elementos que tu quer. É isso mesmo que você tá querendo ou você quer que ele traga um único valor?
posta o seu método também e me diz qual erro ta aparecendo.
alexandref93
andre.froes:
tu tem que ver o que tu quer que retorne. Por exemplo, aquele metodo de retorna um List de elementos que tu quer. É isso mesmo que você tá querendo ou você quer que ele traga um único valor?
posta o seu método também e me diz qual erro ta aparecendo.
private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {
List<String> getListaBusca(String valor){
PreparedStatement stmt = this.con.prepareStatement("select * from jTable1 where jTextField1 like '%" + valor + "%'");
}
ele acusa erro na linha do List!!!
eu quero ele faça o seguinte, tipo, digitei lah “alex” no campo, e ao clicar no botão pesquisar, ele retorna com uma lista de possiveis nome com alex!!!
entendeu???
A
andre.froes
Entendi o seu erro, e você está cometendo um equívoco, você terá que criar um método que vai ser chamado no action performed.
publicList<String>getBusca(Stringvalor){
PreparedStatementstmt=this.con.prepareStatement("select nome from contato where nome like '%"+valor+"%'");ResultSetrs=stmt.executeQuery();List<String>listaBusca=newArrayList<String>();while(rs.next()){
listaBusca.add(rs.getString("nome"));}
rs.close();stmt.close();returnlistaBusca;}
privatevoidjButton4ActionPerformed(java.awt.event.ActionEventevt){List<String>d=getBusca("Teste");for(Stringdado:d){
System.out.println(dado);}
}
o método getbusca vai acusar erros porque não fiz os try/catch, to na munheca no computador da namorada aqui, apenas completa os exceptions.
Deu pra entender porque deu o erro?
o método vai te retornar a lista, e lá você vai tratar
alexandref93
andre.froes:
Entendi o seu erro, e você está cometendo um equívoco, você terá que criar um método que vai ser chamado no action performed.
publicList<String>getBusca(Stringvalor){
PreparedStatementstmt=this.con.prepareStatement("select nome from contato where nome like '%"+valor+"%'");ResultSetrs=stmt.executeQuery();List<String>listaBusca=newArrayList<String>();while(rs.next()){
listaBusca.add(rs.getString("nome"));}
rs.close();stmt.close();returnlistaBusca;}
privatevoidjButton4ActionPerformed(java.awt.event.ActionEventevt){List<String>d=getBusca("Teste");for(Stringdado:d){
System.out.println(dado);}
}
o método getbusca vai acusar erros porque não fiz os try/catch, to na munheca no computador da namorada aqui, apenas completa os exceptions.
Deu pra entender porque deu o erro?
o método vai te retornar a lista, e lá você vai tratar