Problema com um select

Bom ao fazer login eu estava querendo salvar esses dados
porém está dando error ao entrar dentro do while:

            Equipamentos equipamento = new Equipamentos();
            PreparedStatement pesquisarEquipDados = con.prepareStatement("SELECT e.equipamento_nome,e.id_equipamentos,eu.id_equipamento_do_usuario,eu.idequipamentos FROM equipamento_user eu INNER JOIN equipamentos e on(e.id_equipamentos=eu.idequipamentos) INNER JOIN usuario u on (u.id_usuario=eu.idusuario) where u.id_usuario= "+Sessao.getInstancia().getUsuario().getId()+"");
            ResultSet resultEquip = pesquisarEquipDados.executeQuery();
                while(resultEquip.next()){
                    if(rs.getLong("e.id_equipamentos")==1){
                    equipamento.setEquipamento_nome(rs.getString("e.equipamento_nome"));
                    equipamento.setId_equipamentoUser_computador(rs.getLong("eu.id_equipamento_do_usuario"));
                    equipamento.setSerial_computador(rs.getString("eu.serial_equipamento"));
                    }
                    if(rs.getLong("eu.idequipamentos")==2){
                    equipamento.setEquipamento_nome(rs.getString("e.equipamento_nome"));
                    equipamento.setId_equipamentoUser_modem(rs.getLong("eu.id_equipamento_do_usuario"));
                    equipamento.setSerial_modem(rs.getString("eu.serial_equipamento"));
                    }
                    if(rs.getLong("eu.idequipamentos")==3){
                    equipamento.setEquipamento_nome(rs.getString("e.equipamento_nome"));
                    equipamento.setId_equipamentoUser_impressora(rs.getLong("eu.id_equipamento_do_usuario"));
                    equipamento.setSerial_impressora(rs.getString("eu.serial_equipamento"));
                    }
                    if(rs.getLong("eu.idequipamentos")==4){
                    equipamento.setEquipamento_nome(rs.getString("e.equipamento_nome"));
                    equipamento.setId_equipamentoUser_monitor(rs.getLong("eu.id_equipamento_do_usuario"));
                    equipamento.setSerial_monitor(rs.getString("eu.serial_equipamento"));
                    }
                }


            aSessao.getInstancia().setDepartamento(departamento);
            aSessao.getInstancia().setEquipamentos(equipamento);

o problema está nessa linha
if(rs.getLong(“eu.idequipamentos”)==1)

alguém poderia me ajudar como eu melhoraria isso?

Qual é objeto é esse rs?

setar o metodo de id do computador quando o idequipamento na tabela equipamentos_do_usuario for =1

e assim por diante.

    while(rs.next()){
       Equipamentos equipamento = new Equipamentos();
       equipamento.setEquipamento_nome(rs.getString("e.equipamento_nome"));
       equipamento.setId_equipamentos(rs.getLong("eu.idequipamentos"));
       equipamento.setId_equipamento_do_Usuario(rs.getLong("eu.id_equipamento_do_usuario"));
       equipamentos.add(equipamento);
    }

algo parecido com essa lista
eu criei uma lista pegando todos os dados da lista equipamentos_do_usuario

equipamentos

bom basicamente eu preciso disso por conta dessas 2 tabelas.

Não a onde você declara esse rs?

1 curtida

acabei de descobrir que o motivo era esse
tive falta de atenção e esqueci de mudar o nome do resulset
para resultEquip

1 curtida

Você devolve o retorno da consulta pra esse cara aqui -> resultEquip

Você aplica o laço de repetição para percorrer esse cara aqui -> resultEquip

E está tentando recuperar um valor pra fazer comparações com cara aqui -> rs

Como dizem meus professores, “algo de errado não está certo”.

2 curtidas

kk realmente
falta de atenção da minha parte :frowning: