Boa noite pessoal
Na minha consulta abaixo, está carregando sempre o mesmo registro, mesmo eu utilizando while(rs.next()).
Eu estou utilizando uma consulta com like "%nomedigitado%", sendo assim ele traz vários nomes, mas no meu array ele coloca sempre o mesmo, ou seja, parece que não está indo para o próximo regsitro do result set.
O que estou fazendo de errado ??
Obrigado.
public Contato[] consultaContatoNome(Contato contato) {
// Obtem uma entrada para consulta SQL na conexão
Connection c = Conexao.getConnection();
Contato[] arrayContatos = new Contato[50];
int cont = 0;
try {
String sql = "select nome from pessoa where nome like '%" +
"contato.getNome().trim()+ "%' order by nome";
PreparedStatement pStm = c.prepareStatement(sql);
pStm.executeQuery();
ResultSet rs = pStm.getResultSet();
while (rs.next()) {
contato.setNome(new String(rs.getString(1)));
arrayContatos[cont] = contato;
cont = (cont+1);
}
pStm.close();
} catch (SQLException e) {
Mensagem
.mensagemErro("Erro SQL",
"Não foi possivel executar select da tabela pessoa na base.");
e.printStackTrace();
} finally {
try {
c.close();
} catch (SQLException e) {
Mensagem.mensagemErro("Erro SQL",
"Não foi possivel fechar conexão com BD.");
e.printStackTrace();
}
}
return arrayContatos;
}