[RESOLVIDO]Problema com AbstractModelTable e inner join

Pessoal tenho uma aplicação onde ela vai ao Banco e me retorna dados que equivalente a uma data fornecida pelo usuário, mas quando faço isso ele me retorna o ultimo dado em todas as linhas exemplo se haver 2 dados que possuam a mesma data ele vai preencher essa linha com o mesmo dado sempre o ultimo da chamada

Ja tentei de várias maneiras mas não consigo solucionar esse problema se alguém poder me ajudar ficou muito grato

[code] private List getListaAgenda(){

    List<PesquisaAgenda> listapa = new ArrayList<PesquisaAgenda>(); 
    
    PesquisaAgenda pa = new PesquisaAgenda();
    
    String data = ftfdata.getText();

     try {
            conn = DriverManager.getConnection("jdbc:odbc:fashionhair","root","");
            Statement stmt = conn.createStatement();
      
      ResultSet res = stmt.executeQuery("Select agenda.hora as hora, agenda.data as data,cadastro_cliente.nome_cliente as nome from agenda inner join cadastro_cliente on agenda.cod_cli = cadastro_cliente.cod_cli where agenda.data =\""+data+"\";");

      while (res.next()){
      
       pa.setNomeAgenda(res.getString("nome"));
       pa.setDataAgenda(res.getString("data"));
       pa.setHoraAgenda(res.getString("hora"));

        listapa.add(pa);

   } 
       
       res.close();
       stmt.close();
       conn.close();
       
        } catch (SQLException ex) {
           ex.printStackTrace();
        }


     return listapa;
}[/code]

att

Gabriel

WHERE agenda.data = '"+data+"' ;

fwsales acho que você entendeu errado, isso ocorre quando vou setar no JTable a query está certa ;)!

tente assim:

[code]while (res.next()){
PesquisaAgenda pa = new PesquisaAgenda();

   pa.setNomeAgenda(res.getString("nome"));  
   pa.setDataAgenda(res.getString("data"));  
   pa.setHoraAgenda(res.getString("hora"));  

    listapa.add(pa);  

} [/code]

yhhik é desse modo que estou fazendo! quando executo esse laço ele me trás os dados repetidos, da uma olhada no código que mandei

[code]
while (res.next()){

   pa.setNomeAgenda(res.getString("nome"));  
   pa.setDataAgenda(res.getString("data"));  
   pa.setHoraAgenda(res.getString("hora"));  

    listapa.add(pa);  

} [/code]

Não é não. Tu estás a usar sempre o mesmo objecto. Observa bem que há uma diferença no código.

Opa pmlm certamente, erro meu desculpe yhhik não observei que dentro do loop ele chama a PesquisaAgenda.

att

Grato

vou ver se da certo aqui

Problema Resolvido agradeço a todos que responderam o tópico :)!

desculpa o mal entendido!

Obrigado

Gabriel

Meu Deus, era só instanciar…
Tá valendo então…