Olá Pessoal,
Tenho uma dúvida quanto ao ResultSet.
No caso abaixo grava somente na primeira vez pois na segunda vez loop do FOR, da mensagem de erro " java.sql.SQLException: Operation not allowed after ResultSet closed"
dtm_recupera_tabela= p_ManterPF_Aba21.recuperaTabela(); // Recupera a tabela da Aba 2
for (int i=0;i<dtm_recupera_tabela.getRowCount();i++){
int resp2 = st.executeUpdate("INSERT INTO TB_PATRIMONIO_PF (TB_PESSOAS_FISICAS_ID_PF,TB_TIPO_PATRIMONIO_ID_TIPO_PATRIMONIO,DESC_COMPLEMENTO,VALOR_PATRI) values ('"+SQL1.getInt(1)+"','"+dtm_recupera_tabela.getValueAt(i, 0)+"','"+dtm_recupera_tabela.getValueAt(i, 1)+"','"+1+"')");
}
Lembrando que se eu eu tiver somente um registro a gravar, grava normalmente. O problema é quando tem mais que um registro a ser gravado, ou seja, cada volta do loop do FOR teria que gravar uma linha do banco, mas na segunda volta apresenta o erro.
Pelo que pesquisei isso ocorre por que o após passar pelo st.executeUpdate, ele fecha o ResultSet, portanto na segunda vez encontra o ResultSet Fechado.
Como eu faço para reabrir o ResultSet?
Obs: Meu construtor esta assim definido:
public F_Manter_PF() {
initComponents();
configuraBotoes_pesquisar();
try {
st = new Conexao_DB().getConnection();
} catch (SQLException ex) {
System.out.println("Erro conexao"+ ex.toString());
}
}
Desde de já Obrigado.
