Jtable registros duplicados[RESOLVIDO]

2 respostas
Viniciustelles

Boa tarde pessoal, minha jtable esta trazendo registros duplicados… já aconteceu isso com alguem?

2 Respostas

Hebert_Coelho

Resolveu como?

Coloque aqui para ajudar outros. [=

Viniciustelles

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
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;
    }
Criado 27 de fevereiro de 2013
Ultima resposta 27 de fev. de 2013
Respostas 2
Participantes 2