Erro de ResultSet is Closed

Boa tarde!
Pessoal to com o seguinte problema:

Quero recuperar os dados de duas tabelas de um Banco e para isso preciso usar loop’s encadeados. Até aki blz!

Então criei um loop com rsPacote (ResultSet) para recuperar os dados da peimeira tabela… e para cada registro recuperado ee preciso recuperar as viagens correspodentes a esse pacote.

Então criei um segundo loop… qndo cexecuto o codigo olha o que acontece…

Ele le o primeiro registro da tabela de pacotes e faz o loop para pegar as viagens desse pacote. Blz! :cool: Mas qndo ele volta pra ler o segundo registro da tabela de pacotes da erro… tenho uns 3 registros na tabela mas nao vai…

Eu fiz uns testes e percebi que o problema nao ta bem no segundo loop mas sim em usar ResultSet alternadamente… marquei as linhas importantes com comentarios…

Por Favor! Me ajudem… preciso entregar isso ainda hj ! :sad:


//-- Cria e insere cada Pacote na enpresa(MultiLista)
qrySQL = “SELECT * FROM tbPacote”;
ResultSet rsPacote = stm.executeQuery(qrySQL); //PRIMEIRA RS

while(rsPacote.next()){ //ERRO “ResultSet is Closed” QNDO FAZ O LOOP
Pacote pct = new Pacote();
pct.setNumero(rsPacote.getInt(“numero”));
pct.setCliente(rsPacote.getString(“cliente”));

empresa.inserirPacote(pct);
			
qrySQL = "SELECT * FROM tbViagem WHERE numero = "+        
                rsPacote.getInt("numero"); 
ResultSet rsViagem = stm.executeQuery(qrySQL); // SEGUNDA RS
while(rsViagem.next()){ // ESSE LOOP VAI NORMAL
    Viagem vgm = new Viagem();			
    vgm.setDestino(rsViagem.getString("destino"));
    vgm.setValor(rsViagem.getInt("valor"));
				
    empresa.getAtual().inserirViagem(vgm);		
   }//while Viagens
}//while Pacotes
//-->

Ainda to tentando mas nada… o mesmo erro…

Alguem sabe se eu posso usar dois ResultSet alternadamente ???
Poque ta parecendo que um mexe no ponteiro do outro… mas nao pode ser…

tenho uma alternativa pra funciona, mas o desempenho… vixi…

So falta 4:31 hs pra entregar esse trabalho… AAHHAHAHAHAH

velinho, teve uma discussao estes dias sobre isto e me parece que vc naum pode estar o mais de um result set para a mesma conexão, acho…

hmmm… saquei… poxa ja sei como resolver. vlw

E que sou novo aki… nao achei o outro post sobre esse assunto… mas vlw cara mo ajuda… hehe tenho 50 minutos pra entregar isso… e ainda falta fazer ele ler arquivo XML…

Deixa eu perguntar!!! So vc responde ??? descde q entrei aki (hoje) de 10 post q vi… uns 6 tavam com algum comentario seu…

legal isso cara… espero poder arrumar tempo pra me dedicar ao forum tb…

Fui !!

É cara, quando sobra um tempinho eu respondo…

Mas é que é domingo, o pessoal naum entra muito no fórum, mas de semana tem gente pra caramba.

Abraços

Ai… criei outra conexão e deu certo…
Mas ta meio feio o serviço… to com duas conexões ao msm banco… nem da para deixar o ODBC com “acesso privado”…

Mas eu devo ta vacilando… acho que uma tabela so puxando um relacionamento simplesinho da pra resolver…

Mas vlw!!! Enterguei o trabalho a tempo… só q ficou incompleto :sad:
Faltou fazer com que ele leia um arquivo xml…

Fui !!!

Ae,

andei fazendo uns testes aki… porque não é possível ter que fazer duas conexões… e se o acesso ao banco for privado ???

Então descobri que não precisa fazer duas conexões e sim duas statements… onde cada uma vai ter seu ResultSet…

Se alguem souber outro maneira de usar mais de um ResultSet no banco simultaneamente por favor me avisa !!!