Boa tarde, tenho 2 selects, o primeiro traz 2 ids, e o while vai rodar o laço por duas vezes…
Até ai tudo bem…
Vou colocar o código abaixo para facilitar:
String sqlMeters = “select oid_meter from rs_meter where oid_uc = ? and (oid_type_meter = 2 or oid_type_meter = 3)”;
PreparedStatement stmtMeters = conn.prepareStatement(sqlMeters);
stmtMeters.setLong(1, idUc);
ResultSet rsMeters = stmtMeters.executeQuery();
A package no banco deveria trazer um valor para o id1 para a variavel String[] leituraTokens = strLeitura.split("|"); e outro valor para o segundo id do laço porém ele trazer o mesmo valor para os dois…
Conferi os parametros que estão sendo passados e estão corretos… no segundo laço vem um novo
stmt.setString(3, rsMeters.getString(“oid_meter”)) e deveria trazer outro valor no String[] leituraTokens = strLeitura.split("|");…
Minha dúvida é, isso acontece por não estar finalizando a package?
Pq esta acontecendo isso?
Boa tarde amigo, agradeço sua atenção, mas isto não esta causando o problema.
No debug, o valor dentro do strLeitura vem normal e não da nenhuma exception.
Meu problema é a package trazer o mesmo valor para o primeiro id do laço e para o segundo…
Sim para que traga somente 1 linha certo?
Porém como na parte abaixo eu “zero” o result fecho ele e o stmt e faço novamente, ele deveria trazer um novo registro pois no segundo laço o terceiro parametro ( rsMeters.getString(“oid_meter”)); ) muda e isso deveria alterar o resultado…não?
Obrigado blayd2015, mas o periodo é sempre o mesmo e esta rolando certinho, o problema parece ser a package, ela parece não estar sendo finalizada do laço 1 para o laço 2 entendeu?
Parece que quando seto os valores novamente ele não sobrescreve, mesmo eu forçando abaixo setando o stmt null e o rs null… parece que ela não é feita com o novo valor de rsMeters.getString(“oid_meter”)…
Só para efeito de não deixar sem resposta.
Alterei o select sem mexer na package e resolvi o problema.
A ideia do blayd2015 foi até bacana e por ter ajudado vou colocar como a solução.