Boa tarde pessoal, minha jtable esta trazendo registros duplicados… já aconteceu isso com alguem?
Resolveu como?
Coloque aqui para ajudar outros. [=
Pessoal o problema era muito simples, vou postar a solução se acaso alguém tenha:
A Jtable é uma matriz então deve ter dois vetores só que um deve ser inicializado fora do while e um dentro para que cada iteração ele adicione um registro.
Assim
[code] Vector registros = new Vector();//Este declara fora para armazenar todos os registros
Vector registroAtual = null;
String select = “SELECT c.id_consulta, p.nome_paciente, m.nome_medico, c.data_consulta, c.hora , c.descricao”
+ " FROM paciente p, consulta c, medico m "
+ " WHERE c.id_paciente = p.id_paciente "
+ " AND c.id_medico = m.id_medico "
+ " AND c.data_consulta = ? ";
PreparedStatement stmt = connection.prepareStatement(select);
stmt.setDate(1, data);
ResultSet rs = stmt.executeQuery();
while (rs.next()) {
registroAtual = new Vector();//Esse dentro para que cada volta ele adicione um registro diferente
registroAtual.add(rs.getLong("id_consulta"));
registroAtual.add(rs.getString("nome_paciente"));
registroAtual.add(rs.getString("nome_medico"));
Date dataConsulta = rs.getDate("data_consulta");
SimpleDateFormat f = new SimpleDateFormat("dd/MM/yyyy");
//vai te retorna uma String
registroAtual.add(f.format(dataConsulta));
registroAtual.add(rs.getTime("hora"));
registroAtual.add(rs.getString("descricao"));
registros.add(registroAtual);
}
rs.close();
stmt.close();
return registros;
}[/code]